HomeClusterLabs Projects

ipc_client: Use libqb to get auth data for ipcc connections

Description

ipc_client: Use libqb to get auth data for ipcc connections

When using libqb in SOCKET mode it uses DGRAM connections
that don't support SO_PEERCRED, so we can't use that to authenticate
the daemons. However, libqb does keep this information so we can
use the (newly created) API call to get it.

This requires a new call, that breaks the API of crm_ipc_is_authentic_process
so we wrap the new call in that one to maintain compatibility with
external users.

This does not work if corosync is using SOCKET connections (set
in corosync.conf) as it does not expose the libqb ipcc object
we need to pass into libqb.

Also this uncovered a bug in the linker options we were using
that caused breakage on FreeBSD, so fix that too.

Details

Provenance
chrissie-cAuthored on Oct 26 2020, 4:45 AM
Parents
rP4976d06ea0dd: Merge pull request #2197 from clumens/ch11+15
Branches
Unknown
Tags
Unknown

Event Timeline