John Ferlito wrote:

> Also can the user cat /dev/ttyS0 ?

Hmm, yes it can.

Now's when I probably need to provide some more info. The process
in question is a CUPS [0] backend driver that talks to a serial
printer. The process is started by CUPS with a whole bunch of
special enviroment variables and command line parameters which
makes it a little difficult to debug.

By writing to a log file I know that when the process is started
by CUPS it has a user and group id of "lp" and that "lp" is a
member of the "dialout" groups.

Su-ing to the "lp" user account and catting to the serial port
works as does fiddling the right command line and environment
to run the backend directly from the "lp" account.

That means that CUPS may be doing something to the process before
it execs the backend driver, possibly using capabilities [1].

More debugging needed.

Cheers,
Erik

[0] http://www.cups.org/
    (I know is about the best common printing system available
    for Linux but damn its bloody awful!)

[1] http://www.securityfocus.com/infocus/1400

-- 
-----------------------------------------------------------------
Erik de Castro Lopo
-----------------------------------------------------------------
"... so the notion that it is meaningful to pass pointers to memory
objects into which any random function may write random values
without having a clue where they point, has _not_ been debunked as
the sheer idiocy it really is." -- Erik Naggum, comp.lang.lisp
_______________________________________________
coders mailing list
coders@slug.org.au
http://lists.slug.org.au/listinfo/coders

Reply via email to