[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#646247: marked as done ([libinklevel5] requires deprecated usblp devices for USB printers ("Could not access '/dev/usb/lp0' or '/dev/usblp0'."))



Your message dated Tue, 19 Jan 2021 21:23:59 -0500
with message-id <16e3495d2b9ad7c8e8c36f023adb668927bfed4c.camel@debian.org>
and subject line Re: [libinklevel5] requires deprecated usblp devices for USB printers ("Could not access '/dev/usb/lp0' or '/dev/usblp0'.")
has caused the Debian Bug report #646247,
regarding [libinklevel5] requires deprecated usblp devices for USB printers ("Could not access '/dev/usb/lp0' or '/dev/usblp0'.")
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
646247: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=646247
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: libinklevel5
Version: 0.8.0-1.1+b1
Severity: serious

libinklevel requires /dev/usb/lp? or /dev/usblp? for USB printers. Otherwise, it returns DEV_USB_LP_INACCESSIBLE:

     case DEV_USB_LP_INACCESSIBLE:
       printf("Could not access '/dev/usb/lp%d' or '/dev/usblp%d'.\n",
              portnumber, portnumber);
       break;

get_device_id() contains:

     if (port == USB) {
       sprintf(device_file1, "/dev/usb/lp%d", portnumber);
       sprintf(device_file2, "/dev/usblp%d", portnumber);
       fd = open(device_file1, O_RDONLY);
       if (fd == -1) {
         fd = open(device_file2, O_RDONLY);
       }
       if (fd == -1) {
         return DEV_USB_LP_INACCESSIBLE;
       }
     }

Therefore, polling ink levels on USB printers fails if the usblp LKM is not loaded:

$ ink -p usb
Could not access '/dev/usb/lp0' or '/dev/usblp0'.
Could not get ink level.
chealer@vinci:~$

Both ink and Qink fail with USB printers. qink just complains "Printer error No printers detected on this system". Launching it as root won't help. However, printing works...

usblp used to be loaded when a USB printer was plugged in. usblp is now blacklisted by cups, since CUPS switched from usblp to libusb:

Drop usb-backend-both-usblp-and-libusb.dpatch. It's causing crashes, and
      upstream does not want it either. Instead, add a blacklist file
      debian/local/blacklist-cups-usblp.patch and install it into
      /etc/modprobe.d/; that way, we don't require kernels to disable usblp, and
      allow other spoolers than cups to work.
http://packages.debian.org/changelogs/pool/main/c/cups/current/changelog#version1.4.6-8

# cat /etc/modprobe.d/blacklist-cups-usblp.conf
# cups talks to the raw USB devices, so we need to blacklist usblp to avoid
# grabbing them
blacklist usblp
root@vinci:/etc#

A workaround is to purge cups, or to manually load usblp.

This means that ink and Qink won't just work for the vast majority of printers.

--- System information. ---
Architecture: i386
Kernel: Linux 3.0.0-2-amd64

Debian Release: wheezy/sid
990 testing security.debian.org
990 testing ftp.ca.debian.org
500 unstable ftp.ca.debian.org
1 experimental ftp.ca.debian.org

--- Package information. ---
Depends (Version) | Installed
============================-+-===========
libc6 (>= 2.3) | 2.13-21
libieee1284-3 | 0.2.11-10


Package's Recommends field is empty.

Package's Suggests field is empty.






--- End Message ---
--- Begin Message ---
Version: 0.9.2-1

According to upstream libinklevel maintainer, libinklevel 0.9.0 or later is
using libusb instead of deprecated device nodes. I believe this should no
longer be an issue with newer libinklevel packages.

Thanks,
Boyuan Yang

On Sat, 22 Oct 2011 12:36:17 -0400 Filipus Klutiero <chealer@gmail.com> wrote:
> Package: libinklevel5
> Version: 0.8.0-1.1+b1
> Severity: serious
> 
> libinklevel requires /dev/usb/lp? or /dev/usblp? for USB printers. 
> Otherwise, it returns DEV_USB_LP_INACCESSIBLE:
> 
> >      case DEV_USB_LP_INACCESSIBLE:
> >        printf("Could not access '/dev/usb/lp%d' or '/dev/usblp%d'.\n",
> >               portnumber, portnumber);
> >        break;
> 
> get_device_id() contains:
> 
> >      if (port == USB) {
> >        sprintf(device_file1, "/dev/usb/lp%d", portnumber);
> >        sprintf(device_file2, "/dev/usblp%d", portnumber);
> >        fd = open(device_file1, O_RDONLY);
> >        if (fd == -1) {
> >          fd = open(device_file2, O_RDONLY);
> >        }
> >        if (fd == -1) {
> >          return DEV_USB_LP_INACCESSIBLE;
> >        }
> >      }
> 
> Therefore, polling ink levels on USB printers fails if the usblp LKM is 
> not loaded:
> 
> > $ ink -p usb
> > Could not access '/dev/usb/lp0' or '/dev/usblp0'.
> > Could not get ink level.
> > chealer@vinci:~$
> 
> Both ink and Qink fail with USB printers. qink just complains "Printer 
> error No printers detected on this system". Launching it as root won't 
> help. However, printing works...
> 
> usblp used to be loaded when a USB printer was plugged in. usblp is now 
> blacklisted by cups, since CUPS switched from usblp to libusb:
> 
> > Drop usb-backend-both-usblp-and-libusb.dpatch. It's causing crashes, and
> >       upstream does not want it either. Instead, add a blacklist file
> >       debian/local/blacklist-cups-usblp.patch and install it into
> >       /etc/modprobe.d/; that way, we don't require kernels to disable usblp, and
> >       allow other spoolers than cups to work.
> http://packages.debian.org/changelogs/pool/main/c/cups/current/changelog#version1.4.6-8
> 
> > # cat /etc/modprobe.d/blacklist-cups-usblp.conf
> > # cups talks to the raw USB devices, so we need to blacklist usblp to 
> > avoid
> > # grabbing them
> > blacklist usblp
> > root@vinci:/etc#
> 
> A workaround is to purge cups, or to manually load usblp.
> 
> This means that ink and Qink won't just work for the vast majority of 
> printers.

Attachment: signature.asc
Description: This is a digitally signed message part


--- End Message ---

Reply to: