Until now I had my Brother DCP-7055 Scanner exposed through SANEd to be able to use the scanner in my LAN. So everything was supposedly properly setup, drivers, the UDEV rules to make SANEd detect the Scanner, saned is added to the proper groups, etc, and it was working fine.

It has been some time that I haven't been using the scanner, so I don't know when exactly SANEd broke. In the meantime I got some packages updated and even had a bunch of kernel updates (Debian 9).

The SANEd process itself is running and listening. I can connect to it with a SANE Client but when I try to scan it returns an INVALID STATE exception.

Running SANEd manually with "saned -d128" shows a bit more of details. The process seems to be listening, but the moment I try to scan it crashes. The log can be seen here:

[saned] main: starting debug mode (level 128)
[saned] read_config: searching for config file
[saned] read_config: done reading config
[saned] saned (AF-indep+IPv6) from sane-backends 1.0.25 starting up
[saned] do_bindings: trying to get port for service "sane-port" (getaddrinfo)
[saned] do_bindings: [1] socket () using IPv6
[saned] do_bindings: [1] setsockopt ()
[saned] do_bindings: [1] bind () to port 6566
[saned] do_bindings: [1] listen ()
[saned] do_bindings: [0] socket () using IPv4
[saned] do_bindings: [0] setsockopt ()
[saned] do_bindings: [0] bind () to port 6566
[saned] do_bindings: [0] bind failed: Address already in use
[saned] run_standalone: spawning Avahi process
[saned] run_standalone: waiting for control connection
[saned] saned_avahi_callback: AVAHI_CLIENT_S_RUNNING
[saned] saned_create_avahi_services: adding service 'saned'
[saned] saned_avahi_group_callback: service 'saned' successfully established
[saned] handle_connection: processing client connection
[saned] check_host: detected an IPv4-mapped address
[saned] check_host: access by remote host: ::ffff:
[saned] check_host: remote host is not IN_LOOPBACK nor IN6_LOOPBACK
[saned] check_host: local hostname: private
[saned] check_host: local hostname(s) (from DNS): private.home
[saned] check_host: local hostname(s) (from DNS): (null)
[saned] check_host: local hostname(s) (from DNS): (null)
[saned] check_host: remote host doesn't have same addr as local
[saned] check_host: opening config file: /etc/hosts.equiv
[saned] check_host: can't open config file: /etc/hosts.equiv (No such file or directory)
[saned] check_host: opening config file: saned.conf
[saned] check_host: config file line: `# saned.conf'
[saned] check_host: config file line: `# Configuration for the saned daemon'
[saned] check_host: config file line: `'
[saned] check_host: config file line: `## Access list'
[saned] check_host: config file line: `# A list of host names, IP addresses or IP subnets (CIDR notation) that'
[saned] check_host: config file line: `# are permitted to use local SANE devices. IPv6 addresses must be enclosed'
[saned] check_host: config file line: `# in brackets, and should always be specified in their compressed form.'
[saned] check_host: config file line: `#'
[saned] check_host: config file line: `# The hostname matching is not case-sensitive.'
[saned] check_host: config file line: `'
[saned] check_host: config file line: `'
[saned] check_host: subnet with base IP =, CIDR netmask = 24
[saned] check_host: access granted from IP address (in subnet
[saned] init: access granted
[saned] init: access granted to user@::ffff:
[saned] process_request: waiting for request
[saned] process_request: got request 2
[saned] process_request: access to resource `brother4' granted
[saned] process_request: sane_open returned: Invalid argument
[saned] process_request: waiting for request
[saned] process_request: bad status 104
[saned] bailing out, waiting for children...
[saned] bail_out: all children exited

That's as far I could get so far. Sounds to me like the brother4 driver seems broken or SANEd expects it in a different way.

But the interesting part is that any other scanning command in the system seems to be working properly.

Running "scanimage > test" succeeds and the image gets scanned.

Running "scanimage -L" returns:

device `brother4:bus2;dev1' is a Brother DCP-7055 USB scanner

Running "sane-find-scanner" returns:

found USB scanner (vendor=0x04f9, product=0x0248) at libusb:001:005

Running "lsusb" returns:

Bus 001 Device 005: ID 04f9:0248 Brother Industries, Ltd DCP-7055 scanner/printer
Bus 001 Device 002: ID 8087:0a2a Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

I tried updating the Scanner Drivers to the latest version but still the same issue persists. Anybody has an idea of what could be going wrong here or how to find what is causing the issue?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.