protocol-native: Disable srbchannel for setups without SCM_CREDENTIALS
authorAhmed S. Darwish <darwish.07@gmail.com>
Fri, 22 Apr 2016 19:48:26 +0000 (21:48 +0200)
committerTanu Kaskinen <tanuk@iki.fi>
Sun, 24 Apr 2016 15:16:34 +0000 (18:16 +0300)
commit26d5b6d199b66028ee10187da50d78303ce8d36e
tree8e0b1080d66dab9a30fa3e2e33b868b5d6363c75
parentdcbe79bd630b6176eac7214834234218de744f2a
protocol-native: Disable srbchannel for setups without SCM_CREDENTIALS

srbchannel needs fd passing. Otherwise we get the following error
for systems without SCM_CREDENTIALS support:

    Code should not be reached at pulsecore/pstream-util.c:95,
    function pa_pstream_send_tagstruct_with_fds(). Aborting.

[[ The root cause is that we define HAVE_CREDS only if
SCM_CREDENTIALS is defined, but SCM_CREDENTIALS is a Linux-specific
symbol. Thus HAVE_CREDS is always disabled on Solaris.

And since pulse couples the non-portable creds passing support
with the portable fd passing one, through _35_ places where
HAVE_CREDS is used, a real fix needs a PA redesign -- assuming that
latency on Solaris is something people care about. ]]

BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=94339
Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
src/pulsecore/protocol-native.c
src/pulsecore/pstream-util.c