Package: cups-daemon Version: 2.2.1-2 Severity: minor To reproduce: 1. Obtain an IPP network printer with a static IP address. 2. Define a cups queue for said printer using the ipp: backend 3. Set an ErrorPolicy that's not "stop-printer" (e.g. abort-job). 4. Start a large print job on this printer, i.e. a job that needs at least 10 seconds to send over the network. 5. While the job is being transmitted over the network, crash the printer (e.g. yank the power cord). 6. Immediately restart the printer. 7. Wait for the job to fail. Expected behavior: cups handles the job failure according to the specified ErrorPolicy. Actual behavior: cups stops the printer, blocking subsequent jobs. system-config-printer alerts me of the job failure but doesn't inform me that the printer's been stopped. "Nothing prints" until I do `sudo cupsenable queue_name`. This appears to be independent of printer make/model. I've reproduced this with an HP LaserJet 4250dtn and a Brother DCP-8155DN. I think problem is that the ipp backend exits with CUPS_BACKEND_STOP if the TCP connection gets terminated with a RST packet. When I crash the printer, the ipp backend starts sending TCP retransmissions, and when the printer reboots, it responds to next retransmission with a RST (much as I would expect from freshly-rebooted embedded TCP/IP stack). Perhaps the backend should return CUPS_BACKEND_FAILED instead? I should add that I've also seen a printer power-cycle itself mid-transfer during a print job that it apparently couldn't handle. (That's was how I discovered this bug, actually.) Even in that case, though, I'd prefer to use the abort-job error policy. -- System Information: Debian Release: stretch/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 4.6.0-1-amd64 (SMP w/2 CPU cores) Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages cups-daemon depends on: ii adduser 3.115 ii bc 1.06.95-9+b2 ii dpkg 1.18.15 ii init-system-helpers 1.46 ii libavahi-client3 0.6.32-1 ii libavahi-common3 0.6.32-1 ii libc6 2.24-8 ii libcups2 2.2.1-2 ii libcupsmime1 2.2.1-2 ii libdbus-1-3 1.10.14-1 ii libgssapi-krb5-2 1.15~beta1-1 ii libpam0g 1.1.8-3.3 ii libpaper1 1.1.24+nmu5 ii libsystemd0 232-7 ii lsb-base 9.20161125 ii procps 2:3.3.11-3 ii ssl-cert 1.0.38 Versions of packages cups-daemon recommends: ii avahi-daemon 0.6.32-1 ii colord 1.3.3-2 ii cups-browsed 1.11.6-1+b1 Versions of packages cups-daemon suggests: ii cups 2.2.1-2 ii cups-bsd 2.2.1-2 ii cups-client 2.2.1-2 ii cups-common 2.2.1-2 ii cups-filters [foomatic-filters] 1.11.6-1+b1 pn cups-pdf <none> ii cups-ppdc 2.2.1-2 ii cups-server-common 2.2.1-2 ii foomatic-db-compressed-ppds [foomatic-db] 20161005-1 ii ghostscript 9.20~dfsg-1 ii hplip 3.16.10+repack0-1 ii poppler-utils 0.48.0-2 ii printer-driver-gutenprint 5.2.11-1+b1 ii printer-driver-hpcups 3.16.10+repack0-1 pn smbclient <none> ii udev 232-7 -- no debconf information
Attachment:
signature.asc
Description: OpenPGP digital signature