[sane-devel] segfault in sane_net_get_devicesconnecting to network saned

Brian J. Murrell brian at interlinx.bc.ca
Tue May 11 17:44:55 UTC 2010

Julien BLACHE <jb <at> jblache.org> writes:
> Hi,

> Did you contact Brother asking them to contribute the code to their
> driver to SANE?

Of course I did, in the context of the printer driver.  There was no point in 
talking about the scanner driver once they made their position on their 
"proprietary trade secrets" position on their printer driver known.

> Because that's actually what you should do.

Been there, done that.

> That, and
> letting them know that you're ditching their hardware for something
> else.

Well, maybe you have an unlimited income from which you can just throw away 
hardware and buy new, but some of us have to budget their income and cannot so
easily just throw things in the garbage and buy new.  Had a new scanner and/or 
printer been in my budget, yes, I would have bought the one that didn't need 
binary drivers, but it is what it is.

> Or you put it up on Ebay and get supported hardware to replace it :)

See above about budgeting income.  Selling it on E-bay, for less than it is 
worth to purchase new, only to have to add more money (than just the resale 
loss) to the proceeds to buy an even more expensive printer than the one I just 
sold at a loss.

> When scanning with xsane as a user, the permissions are set for you by
> ConsoleKit (after udev enabled that when you plugged the scanner in).

> saned just doesn't benefit from this, not being a regular user logged in
> on the "console".

Fine.  But see below regarding permissions...

That said, I think you are also losing sight of the original issue here, which 
is the segfault in libsane, not a permissions issue.  I regret ever having 
mentioned the permissions issue as it seems to have distracted you from the 
segfault.  I can deal with the permissions issue elsewhere.
> So you need to configure your system properly, and, in that regard,
> reading /usr/share/doc/sane-utils/README.Debian will help a lot.

OK.  So doing a:
$ sudo chgrp scanner /dev/bus/usb/002/002

allows xsane to work.  And just for good measure I set the permissions bits to 

$ sudo chmod 666 /dev/bus/usb/002/002

So I think we can move past the permissions issues, yes?

Even with all of this, xsane still segfaults when I have "localhost" enabled in 
/etc/sane.d/net.conf.  Can we agree that this is not a permissions problem now 
and move on to the actual segfault?

FWIW, I have grabbed the libsane sources and will apply my debugging skills to 
this issue when I can find a few hours.  But no doubt I am going to flounder 
around a bit longer (simply due to not knowing the structure of the code, yet) 
that it would likely take somebody here familiar with the code to find the 
issue, which is why I posted here.  If more information would make the task any 
easier, I am happy to oblige.  I know how to drive a complier and debugger and 
so on.

More information about the sane-devel mailing list