Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#848712: cups-filters-core-drivers: driverless is not always reliable

21 views
Skip to first unread message

Brian Potkin

unread,
Dec 19, 2016, 2:10:03 PM12/19/16
to
Package: cups-filters-core-drivers
Version: 1.13.1-1
Severity: normal
Tags: upstream



1. I have an AirPrint-enabled printer on the network (an HP ENVY 4502)
and a CUPS server too. The cups service on the server is stopped. A
client computer has had the lpd, socket, usb, snmp and dnssd backends
disabled using 'dpkg-reconfigure cups'. ippfind gives

ipp://envy4500.local:631/ipp/print

A script on the client has run the commands ippfind, driverless and
lpinfo -v 50 times on the run. The success rate for ippfind and
driverless is 100%; lpinfo -v averages at 96%-98%.

2. cups was now started on the server. ippfind gives

ipp://desktop.local:631/printers/Colour
ipp://desktop.local:631/printers/LaserJet-300
ipp://desktop.local:631/printers/DotMatrix
ipp://desktop.local:631/printers/DotMatrixT
ipp://desktop.local:631/printers/qqq
ipp://desktop.local:631/printers/rawq
ipp://envy4500.local:631/ipp/print

The success rate for ippfind when the script is run is 75%. For
driverless it varies from 24% to 64%. For lpinfo -v it is 66% but
it has been seen to be as low as 8%.

The success rate for ippfind can be increased to a consistent 100%
by using 'ippfind -T 5' but there is nothing similar which can done
for driverless as it stands.

Regards,

--
Brian.

Till Kamppeter

unread,
Dec 19, 2016, 2:30:03 PM12/19/16
to
Strange, seems that avahi-daemon does not hold the info about the
printer in a local cache. And when the network is more busy, the
response times to requests to avahi-daemon get longer.

How does it behave with

ippfind -T 2
ippfind -T 3

?

Till

Brian Potkin

unread,
Dec 19, 2016, 3:10:02 PM12/19/16
to
I am not brilliant using bash but FWIW this is what I am using:

for i in (1..100) ; do ippfind -T 2 | grep envy >> file ; done ; wc -l file ; rm file

This gives 86, 81 and 91 for three runs.

'ippfind -T 3' comes up with 100 for three runs.

Cheers,

--
Brian.

Till Kamppeter

unread,
Dec 19, 2016, 4:10:03 PM12/19/16
to
Added "-T 3" to the ippfind command line in the driverless utility. This
should improve the reliability in finding IPP printers.

I have committed this as rev. 7585 to the cups-filters upstream BZR
repository. Please test.

Till

Brian Potkin

unread,
Dec 19, 2016, 6:40:02 PM12/19/16
to
Got rev. 7585. Compiled it. Copied the new driverless over to the driver
directory in /usr/lib/cups. Ran 'for i in {1..50} ; do driverless......'
five times. 50/50 each time.

That's the good news. The bad news is that 'lpinfo -v' gives no output
and nothing shows up in Discovered Network Printers in the CUPS web
interface.

Cheers,

--
Brian.

Till Kamppeter

unread,
Dec 19, 2016, 6:40:02 PM12/19/16
to
Did you install the newly compiled driverless utility correctly into
your system?

Do

ls -l /usr/bin/driverless
ls -l /usr/lib/cups/driver/driverless
ls -l /usr/lib/cups/backend/driverless

Are all the three files the same or are there symlinks pointing to one
of the three files, so that independent which of the three you execute,
you execute the same file?

Please post the output of the three commands above.

Please also post the output of the following commands:

driverless
driverless list
SOFTWARE=CUPS driverless

They should all list your printer in some form. The second and the third
are they way how CUPS calls them.

Till

Brian Potkin

unread,
Dec 19, 2016, 7:10:03 PM12/19/16
to
On Mon 19 Dec 2016 at 21:36:52 -0200, Till Kamppeter wrote:

> Did you install the newly compiled driverless utility correctly into your
> system?

I put it in /usr/lib/cups/driver/, overwriting what was there.

> Do
>
> ls -l /usr/bin/driverless
> ls -l /usr/lib/cups/driver/driverless
> ls -l /usr/lib/cups/backend/driverless
>
> Are all the three files the same or are there symlinks pointing to one of
> the three files, so that independent which of the three you execute, you
> execute the same file?
>
> Please post the output of the three commands above.
>
> Please also post the output of the following commands:
>
> driverless
> driverless list
> SOFTWARE=CUPS driverless
>
> They should all list your printer in some form. The second and the third are
> they way how CUPS calls them.

root@test:~# ls -l /usr/bin/driverless
lrwxrwxrwx 1 root root 29 Dec 19 07:45 /usr/bin/driverless -> ../lib/cups/driver/driverless
root@test:~# ls -l /usr/lib/cups/driver/driverless
-rwxr-xr-x 1 brian brian 41072 Dec 19 22:55 /usr/lib/cups/driver/driverless
root@test:~# ls -l /usr/lib/cups/backend/driverless
lrwxrwxrwx 1 root root 20 Dec 19 07:45 /usr/lib/cups/backend/driverless -> ../driver/driverless

Two symlinks. I understand this is correct.

root@test:~# driverless
ipp://envy4500.local:631/ipp/print
root@test:~# driverless list
DEBUG: Started ippfind (PID 31806)
DEBUG: Started post-processing (PID 31807)
"driverless:ipp://envy4500.local:631/ipp/print" en "HP" "HP ENVY 4500 series, driverless, cups-filters 1.13.1" "MFG:HP;MDL:ENVY 4500 series;CMD:PCL,AppleRaster,JPEG,URF;"
DEBUG: PID 31806 (ippfind) exited with no errors.
DEBUG: PID 31807 (Post-processing) exited with no errors.
root@test:~# SOFTWARE=CUPS driverless
DEBUG: Started ippfind (PID 31810)
DEBUG: Started post-processing (PID 31811)
network ipp://envy4500.local:631/ipp/print "HP ENVY 4500 series" "HP ENVY 4500 series (driverless)" "MFG:HP;MDL:ENVY 4500 series;CMD:PCL,AppleRaster,JPEG,URF;" ""
DEBUG: PID 31811 (Post-processing) exited with no errors.
DEBUG: PID 31810 (ippfind) exited with no errors.

The printer is listed for each command.

At present, I cannot see what I may have done wrong.

--
Brian.

Till Kamppeter

unread,
Dec 19, 2016, 7:20:02 PM12/19/16
to
And "lpinfo -v" still does not list it at all?

Please put CUPS into debug mode via:

cupsctl --debug-logging

Then run

time lpinfo -v

and post the output here.

Attach also /var/log/cups/error_log.

Does

lpinfo -m | grep driverless

give some output? Can you post that, too?

Till

Brian Potkin

unread,
Dec 19, 2016, 7:20:02 PM12/19/16
to
On Mon 19 Dec 2016 at 23:59:04 +0000, Brian Potkin wrote:

> At present, I cannot see what I may have done wrong.

Just taken a quick look at the situation; the rest will have to wait for
tomorrow. I think this may have something to do with the backends which
were disabled on the client

--
Brian.

Brian Potkin

unread,
Dec 20, 2016, 5:50:03 AM12/20/16
to
Please forget about this. It's nothing to do with the issue.

--
Brian.

Brian Potkin

unread,
Dec 20, 2016, 5:50:04 AM12/20/16
to
On Mon 19 Dec 2016 at 22:08:49 -0200, Till Kamppeter wrote:

> And "lpinfo -v" still does not list it at all?
>
> Please put CUPS into debug mode via:
>
> cupsctl --debug-logging
>
> Then run
>
> time lpinfo -v
>
> and post the output here.

root@test:~# time lpinfo -v
network ipps
network beh
network https
network ipp
network http

real 0m0.056s
user 0m0.004s
sys 0m0.000s

> Attach also /var/log/cups/error_log.

Done.

> Does
>
> lpinfo -m | grep driverless
>
> give some output? Can you post that, too?

E [20/Dec/2016:10:07:03 +0000] [CGI] File \"/usr/lib/cups/backend/driverless\" has insecure permissions (0100755/uid=1000/gid=1000).

Fixed with 'chown root.root /usr/lib/cups/backend/driverless'.

'lpinfo -v' now gives the same consistent output (50/50) as 'driverless'.
For good measure I tested with the backends on the client re-enabled
too.

The CUPS web interface has

HP ENVY 4500 series (driverless) (HP ENVY 4500 series)

in discovered printers and offers

HP ENVY 4500 series. driverless. cups-filters 1.13.1 (en)

as the model.

system-config-printer puts

HP ENVY 4500 (envy4500.local)

under "Network Printer and goes on to install a queue with an everywhere
PPD after searching for drivers.

Cheers,

--
Brian.
error_log

Till Kamppeter

unread,
Dec 20, 2016, 7:20:03 AM12/20/16
to
Thank you for testing.

I tried "make install" as root and "driverless" and the symlinks all get
root.root ownerships.

So we can consider this bug as fixed upstream now.

Till
0 new messages