[pulseaudio-discuss] [PATCH] esound auth-ip-acl fix (was Re: anyone else seeing this failure?)

Nix nix at esperi.org.uk
Fri Sep 26 11:29:17 PDT 2008

On 26 Sep 2008, nix at esperi.org.uk uttered the following:

> Freshly-compiled PA 0.9.12:
> nix at hades 167 /home/nix% start-pulseaudio-x11
> I: caps.c: Limited capabilities successfully to CAP_SYS_NICE.
> I: caps.c: Dropping root priviliges.
> I: caps.c: Limited capabilities successfully to CAP_SYS_NICE.
> E: main.c: Daemon startup failed.
> *** glibc detected *** /usr/bin/pulseaudio: free(): invalid pointer: 0x080593e0 ***
> /usr/bin/start-pulseaudio-x11: line 22: 20450 Aborted                 /usr/bin/pulseaudio --start "$@"
> It's hard to debug it. Even as root I get garbage backtraces.

We have several further problems, even discounting my crappy hardware
apparently ruling out glitch-free for good (my own damn fault, I should
have upgraded years ago but it's so much bother), and the invalid
pointer on termination, which I have yet to track down.

i) the alsa source and sink don't work together: if I try I get -EBUSY
on the second one to initialize, every time. Maybe my SBLive card is
just too cheap and old, but this does mean module-hal-detect won't work
for me.

ii) the card doesn't support mmapped access (we get a -EINVAL back) but
PA isn't detecting this (as, from the source, it should). With 'mmap=0'
on the ALSA sink (not source, I can't use that, see above) things work
better. I'll look into why the fallback code is broken next.

iii) module-console-kit fails with a ludicrous error, not yet diagnosed:

module-console-kit.c: GetSessionsForUnixUser() call failed: org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/libexec/dbus-daemon-launch-helper: Success

iv) module-protocol-stub has a one-character typo that breaks
auth-ip-acl for the esound TCP module, patch:

commit 4c3df8b9edefdcd4292337355adaa733b0ecb53b
Author: Nix <nix at esperi.org.uk>
Date:   Fri Sep 26 19:26:03 2008 +0100

    Unbreak esound auth-ip-acl.

diff --git a/src/modules/module-protocol-stub.c b/src/modules/module-protocol-stub.c
index 0e98b1c..aefd402 100644
--- a/src/modules/module-protocol-stub.c
+++ b/src/modules/module-protocol-stub.c
@@ -148,7 +148,7 @@
 #  include <pulsecore/esound.h>
 #  define TCPWRAP_SERVICE "esound"
-#  define MODULE_ARGUMENTS_COMMON "sink", "source", "auth-anonymous", "cookie", "auth-cookie", "auth-cookie-enabled"
+#  define MODULE_ARGUMENTS_COMMON "sink", "source", "auth-anonymous", "cookie", "auth-cookie", "auth-cookie-enabled",
 #    include "module-esound-protocol-tcp-symdef.h"

More information about the pulseaudio-discuss mailing list