[pulseaudio-discuss] [PATCH 1/2] protocol-native: Disable srbchannel for setups without SCM_CREDENTIALS

Tanu Kaskinen tanuk at iki.fi
Sun Apr 24 15:26:17 UTC 2016


On Fri, 2016-04-22 at 21:48 +0200, Ahmed S. Darwish wrote:
> 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 at gmail.com>
> ---
> 
> Notes:
>     This was tested by force disabling HAVE_CREDS on a Linux
>     system, which reproduces the Solaris issue quite nicely.
>     
>     More on SCM_CREDENTIALS and portability, by Sun engineers,
>     is at comp.unix.programmer:
>     https://groups.google.com/forum/#!topic/comp.unix.programmer/nwES3UvH-E0
> 
>  src/pulsecore/protocol-native.c | 5 +++++
>  src/pulsecore/pstream-util.c    | 4 ++--
>  2 files changed, 7 insertions(+), 2 deletions(-)

Thanks! I applied this now. By the way, I noticed that you actually
fixed this already in an earlier patch (which is now marked as
superseded in patchwork, since I chose to apply this new patch
instead): https://patchwork.freedesktop.org/patch/76765/

-- 
Tanu


More information about the pulseaudio-discuss mailing list