[pulseaudio-discuss] Connect to non system-wide pulse server inside root privilege program (Asynchronous API)
ap.general at yandex.ru
Tue Nov 5 10:20:18 UTC 2019
Pf: Issue with pa_context_connect() call inside root privilege program.
I have Xubuntu 19.10. On default pulseaudio server (ver 13.0) started on
user logon with "--demonize=no" parameter. I need reroute digital sound
from /dev/dsp to pulse. For this i install osspd package (current ver
1.3.2-11). I have successfully used this package previously on Ubuntu
16.04/18.04-3 with no any tuning. Osspd daemon get source trough CUSE
and required root privileges. I.e. osspd call pulse as root. I copy
user's cookie file to /root/.config/pulse/cookie. But osspd can't
connect to pulse server again. My distribution belongs to group 2 and i
no put users to the "audio" group (but i test opposed: nothing happens :) ).
I debug osspd's slave processes (ossp-padsp) and detect what function
pa_context_connect() return code 'connection refused'. I tried to run
ossp-padsp as user - it connected to server successful. Then i call
pa_context_connect() with name of server
"unix:/run/user/1000/pulse/native" (instead NULL).... the connection is
established! And as ordinary user and as root! It works for me now.
BUT... I assume that somewhere something with settings of access rights
to the pulse server I missed... What and where? How correctly should I
connect to the non system-wide pulse server as root?
Is this behavior of the connection process a normal(documented?) or bug?
Can i (is it right) use this feature to select the specific user's pulse
server to connect?
More information about the pulseaudio-discuss