usb crashed with SIGSEGV in opendir() -- USB ports are in BIOS disabled --> cupsd crashes every time
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cups (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Precise |
Fix Released
|
High
|
Unassigned | ||
Raring |
Won't Fix
|
High
|
Unassigned | ||
Saucy |
Fix Released
|
High
|
Unassigned |
Bug Description
On 4 machines is USB for safety disabled, an HP DeskJet 500 is attached to one machine via LTP (IEEE 1284) and the other machines use the network share... - all working well.
But every time i open up CUPS for configuration or something the process
/usr/sbin/cupsd
crashes and an crash report is generated (attached).
.
Xubuntu 12.04.1
Linux icafe-a 3.2.0-36-generic #57-Ubuntu SMP Tue Jan 8 21:41:24 UTC 2013 i686 i686 i386 GNU/Linux
CUPS
Versions:
1.5.3-0ubuntu6 (/var/lib/
BTW: I was also not able to send the bug via apport, this crashes with "package not installed".
[IMPACT]
If on a machine (mainly servers and high-security environments) the USB is turned off in the BIOS or a very old pre-USB-era machine is used the attempt of CUPS to detect available printers makes the USB CUPS backend being called and the backend crashes then due to absense of USB . The crash itself is harmless, but it makes Apport popping up with a crash report which is annoying.
[TESTCASE]
Turn off the USB support completely in the BIOS setup of the machine, boot and run either
lpinfo -v
or
sudo /usr/lib/
A crash report will pop up. Close it, do not generate the actual bug report.
After installing the proposed package the backend will not crash any more and so no Apport pop-up will occur.
[Regression Potential]
The patch is very simple and adds only an error check to handle an error on initializing libusb properly. The probability of a regression caused by this is practically zero.
NOTE: As the archives for the new development cycle are not open yet I am posting this SRU proposal without a fixed package in the new development branch. The fix is committed to Debian's GIT repo of CUPS though and so it will appear in the new development cycle with the first sync of the cups package.
description: | updated |
summary: |
- USB ports are in BIOS disabled --> cupsd crashes every time + usb crashed with SIGSEGV in opendir() -- USB ports are in BIOS + disabled --> cupsd crashes every time |
description: | updated |
Changed in cups (Ubuntu): | |
status: | Incomplete → Fix Committed |
importance: | Undecided → High |
milestone: | none → ubuntu-13.04 |
Changed in cups (Ubuntu Raring): | |
milestone: | none → raring-updates |
Changed in cups (Ubuntu Precise): | |
importance: | Undecided → High |
Changed in cups (Ubuntu Raring): | |
importance: | Undecided → High |
Changed in cups (Ubuntu Precise): | |
status: | New → In Progress |
Changed in cups (Ubuntu Raring): | |
status: | New → In Progress |
Changed in cups (Ubuntu Saucy): | |
status: | Fix Committed → In Progress |
ProblemType: Crash cups/backend/ usb tamp: 1355350942 linux-gnu/ libpthread- 2.15.so linux-gnu/ libpthread- 2.15.so linux-gnu/ libpthread- 2.15.so linux-gnu/ librt-2. 15.so linux-gnu/ librt-2. 15.so linux-gnu/ librt-2. 15.so i386-linux- gnu/libgnutls. so.26.21. 8 i386-linux- gnu/libgnutls. so.26.21. 8 i386-linux- gnu/libgnutls. so.26.21. 8 linux-gnu/ libm-2. 15.so linux-gnu/ libm-2. 15.so linux-gnu/ libm-2. 15.so i386-linux- gnu/libkrb5. so.3.3 i386-linux- gnu/libkrb5. so.3.3 i386-linux- gnu/libkrb5. so.3.3 i386-linux- gnu/libtasn1. so.3.1. 12 i386-linux- gnu/libtasn1. so.3.1. 12 i386-linux- gnu/libtasn1. so.3.1. 12 i386-linux- gnu/libp11- kit.so. 0.0.0 i386-linux- gnu/libp11- kit.so. 0.0.0 i386-linux- gnu/libp11- kit.so. 0.0.0 linux-gnu/ libdbus- 1.so.3. 5.8 linux-gnu/ libdbus- 1.so.3. 5.8 linux-gnu/ libdbus- 1.so.3. 5.8 linux-gnu/ libdl-2. 15.so linux-gnu/ libdl-2. 15.so linux-gnu/ libdl-2. 15.so linux-gnu/ libresolv- 2.15.so linux-gnu/ libresolv- 2.15.so linux-gnu/ libresolv- 2.15.so linux-gnu/ libresolv- 2.15.so
Architecture: i386
CrashCounter: 1
Date: Tue Jan 29 10:24:52 2013
DistroRelease: Ubuntu 12.04
ExecutablePath: /usr/lib/
ExecutableTimes
ProcAttrCurrent: /usr/sbin/cupsd (enforce)
ProcCmdline: usb
ProcCwd: /
ProcEnviron:
PATH=(custom, no user)
LANG=de_DE.UTF8
ProcMaps:
00110000-00127000 r-xp 00000000 08:01 1401074 /lib/i386-
00127000-00128000 r--p 00016000 08:01 1401074 /lib/i386-
00128000-00129000 rw-p 00017000 08:01 1401074 /lib/i386-
00129000-0012b000 rw-p 00000000 00:00 0
0012b000-00132000 r-xp 00000000 08:01 1401070 /lib/i386-
00132000-00133000 r--p 00006000 08:01 1401070 /lib/i386-
00133000-00134000 rw-p 00007000 08:01 1401070 /lib/i386-
00134000-001f3000 r-xp 00000000 08:01 590073 /usr/lib/
001f3000-001f7000 r--p 000be000 08:01 590073 /usr/lib/
001f7000-001f8000 rw-p 000c2000 08:01 590073 /usr/lib/
001f8000-00222000 r-xp 00000000 08:01 1401078 /lib/i386-
00222000-00223000 r--p 00029000 08:01 1401078 /lib/i386-
00223000-00224000 rw-p 0002a000 08:01 1401078 /lib/i386-
00224000-002ec000 r-xp 00000000 08:01 590177 /usr/lib/
002ec000-002f2000 r--p 000c7000 08:01 590177 /usr/lib/
002f2000-002f3000 rw-p 000cd000 08:01 590177 /usr/lib/
002f3000-00303000 r-xp 00000000 08:01 590355 /usr/lib/
00303000-00304000 r--p 0000f000 08:01 590355 /usr/lib/
00304000-00305000 rw-p 00010000 08:01 590355 /usr/lib/
00305000-00315000 r-xp 00000000 08:01 590242 /usr/lib/
00315000-00316000 r--p 0000f000 08:01 590242 /usr/lib/
00316000-00317000 rw-p 00010000 08:01 590242 /usr/lib/
00317000-0035e000 r-xp 00000000 08:01 1400858 /lib/i386-
0035e000-0035f000 r--p 00047000 08:01 1400858 /lib/i386-
0035f000-00360000 rw-p 00048000 08:01 1400858 /lib/i386-
00360000-00363000 r-xp 00000000 08:01 1401086 /lib/i386-
00363000-00364000 r--p 00002000 08:01 1401086 /lib/i386-
00364000-00365000 rw-p 00003000 08:01 1401086 /lib/i386-
00365000-00378000 r-xp 00000000 08:01 1401066 /lib/i386-
00378000-00379000 ---p 00013000 08:01 1401066 /lib/i386-
00379000-0037a000 r--p 00013000 08:01 1401066 /lib/i386-
0037a000-0037b000 rw-p 00014000 08:01 1401066 /lib/i386-
0037b000-0037d000 rw-p 00000000 00:00 0
0040b000-0040d000 r-xp 00000000 08:01 140...