Re: esd question



Le mar 12/11/2002 à 09:16, raf a écrit :
> hi,
> 
> i have a question about esound the answer to which i couldn't find
> in the online documentation. i've written a jukebox server that
> accepts requests from the network to play music using mpg321 and
> the sound comes out the soundcard, through an amplifier, and out
> to some real speakers where it sounds nice.
> 
> the problem is how to create a specific user for this server to
> run as. if i run it as myself, the jukebox only works when i am
> currently logged into X (presumably because i own /dev/dsp when
> i'm logged into X). if i create a user called "dj" and run the
> jukebox server as that user, it never works (presumably because
> dj never owns /dev/dsp). if i run it as root, it works all the
> time but i'd really rather not run it as root.

This is caused by the "console" privilege used by pam settings on both
RH and Mandrake system.. In short, the first user to log on with a
physical access to the computer (either using VT or X) get "console"
privilege, which includes sound permissions.. This is controlled by
files /etc/security/console.perms and /etc/security/console.apps/*..

If you want /dev/dsp to always be accessible by your user, add it to
sound group and modify /etc/security/console.perms to make sure /dev/dsp
is always in the "sound" group.

> so what can i do? i didn't understand the section on "Authentication
> Model" in the online documentation. it just says "Your .esd_auth file".
> that doesn't sound like much of a model :) my .esd_auth just contains
> 16 nul bytes. i thought i might be able to copy that to the "dj"
> user's home directory (/tmp) but it did nothing.

In fact, the esd daemon use a authentication token (the ~/.esd_auth
file) which contains random data and which is used to only allow access
to users which have the same authentication token..

> would the -trust option do me any good? i haven't tried it yet
> because it didn't really look relevant.

No, -trust disables checks on /tmp/.esd which contains the esd socket.
It doesn't modify the authentication process.

If you really want to disable the authentication process, use
-promiscuous option.


-- 
Frederic Crozat <fcrozat mandrakesoft com>
MandrakeSoft




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]