[sane-devel] Re: saned problems with xinetd

Henning Meier-Geinitz henning@meier-geinitz.de
Thu, 19 Sep 2002 23:38:04 +0200


On Thu, Sep 19, 2002 at 12:48:13PM -0700, Robert Kleemann wrote:
> The bash error was due to overly restrictive permissions that I had on
> the /root directory.

But if you used user saned.saned why bash tried to access /root?
And if you run as root why it couldn't read inside /root?

> 1) If I run saned via xinetd as root via the following shell
>    script then everything works.
> #!/bin/sh
> export SANE_DEBUG_HP=128
> export SANE_DEBUG_NET=128
> cd /tmp
> #exec /usr/sbin/saned 2> saned.$$.stderr | tee saned.$$.stdout
> exec /usr/sbin/saned
> 2) If I try to get debug info by uncommenting the second to last line
>    and comment the last line in the script then I get a "argument
>    marshalling error (connection reset by peer)" error on the
>    client. The /tmp/saned* files are zero length.

The tee never worked form me. Looks like the connection is closed
immediately. Try "telnet localhost sane" for testing. If it exits
immediately, something is wrong. Otherwise just press return some times.

Try "exec /usr/sbin/saned 2> saned.$$.stderr" only. The tee would log
the data send from saned to the client which wouldn't be of much use
if you don't know the SANE net protocoll very well.

> 3) If I try to run as user saned with the nonredirected version of the
>    above script then the client appears to succeed but no network
>    scanners are found.  I thought this was a permission problem with a
>    device so I added saned to every group that is found in /dev but it
>    still didn't work scanner.  This gives saned access to 90% of the
>    devices in /dev including: sg*, lp*, usb/scanner*, and usb/lp*

Try with the above logging enabled. By the way: SANE_DEBUG_NET is only
for the clieant, not the server.

You could also try to run scanimage -L as user saned and see if there
are any permission problems.