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

Bug#595118: marked as done (unblock: libusb/2:0.1.12-16)



Your message dated Wed, 1 Sep 2010 13:12:53 +0100
with message-id <4cc38133473c69b045556334963a2e4b.squirrel@adsl.funky-badger.org>
and subject line Re: Bug#595118: unblock: libusb/2:0.1.12-16
has caused the Debian Bug report #595118,
regarding unblock: libusb/2:0.1.12-16
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.)


-- 
595118: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=595118
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package libusb

I have just uploaded a new libusb version which fixes a crash with some
devices that have non-common interface descriptors (Apple devices 
mainly).

The structure contains two pointers that are not always initialized to
NULL when the code leaves the while loop before the end. In that case 
calling free on the pointers later causes a crash.

This was in my inbox for sometime already and already used in some
distributions.


diff -u libusb-0.1.12/debian/control libusb-0.1.12/debian/control
--- libusb-0.1.12/debian/control
+++ libusb-0.1.12/debian/control
@@ -3,7 +3,7 @@
 Priority: optional
 Maintainer: Aurelien Jarno <aurel32@debian.org>
 Build-Depends: debhelper (>= 5.0.22), autotools-dev, pkg-config, docbook, docbook-dsssl, quilt
-Standards-Version: 3.8.4
+Standards-Version: 3.9.0
 
 Package: libusb-0.1-4
 Priority: important
diff -u libusb-0.1.12/debian/changelog libusb-0.1.12/debian/changelog
--- libusb-0.1.12/debian/changelog
+++ libusb-0.1.12/debian/changelog
@@ -1,3 +1,12 @@
+libusb (2:0.1.12-16) unstable; urgency=low
+
+  * Add debian/patches/07_altsetting_alloc.patch based on a patch from
+    Pawel Kot to fix crashes with some USB devices, due to calls to 
+    free() with uninitialized pointers.
+  * Upgraded policy compliance to 3.9.0 (no changes).
+
+ -- Aurelien Jarno <aurel32@debian.org>  Tue, 31 Aug 2010 20:01:39 +0200
+
 libusb (2:0.1.12-15) unstable; urgency=low
 
   * Don't include config.guess/config.sub in 91_autoreconf.diff (closes:
diff -u libusb-0.1.12/debian/patches/series libusb-0.1.12/debian/patches/series
--- libusb-0.1.12/debian/patches/series
+++ libusb-0.1.12/debian/patches/series
@@ -6,4 +6,5 @@
 05_emdebian_libs.diff
 06_bsd.diff
+07_altsetting_alloc.patch
 90_am_maintainer_mode.diff
 91_autoreconf.diff
only in patch2:
unchanged:
--- libusb-0.1.12.orig/debian/patches/07_altsetting_alloc.patch
+++ libusb-0.1.12/debian/patches/07_altsetting_alloc.patch
@@ -0,0 +1,33 @@
+--- a/descriptors.c
++++ b/descriptors.c
+@@ -177,6 +177,7 @@
+     }
+ 
+     ifp = interface->altsetting + interface->num_altsetting;
++    memset(ifp, 0, sizeof(struct usb_interface_descriptor));
+     interface->num_altsetting++;
+ 
+     usb_parse_descriptor(buffer, "bbbbbbbbb", ifp);
+@@ -219,10 +220,7 @@
+     /* Copy any unknown descriptors into a storage area for */
+     /*  drivers to later parse */
+     len = (int)(buffer - begin);
+-    if (!len) {
+-      ifp->extra = NULL;
+-      ifp->extralen = 0;
+-    } else {
++    if (len) {
+       ifp->extra = malloc(len);
+       if (!ifp->extra) {
+         if (usb_debug >= 1)
+@@ -277,8 +275,7 @@
+         parsed += retval;
+         size -= retval;
+       }
+-    } else
+-      ifp->endpoint = NULL;
++    }
+ 
+     /* We check to see if it's an alternate to this one */
+     ifp = (struct usb_interface_descriptor *)buffer;
+

Could you please unblock it? Thanks in advance.

unblock libusb/2:0.1.12-16

-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-5-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash



--- End Message ---
--- Begin Message ---
On Wed, September 1, 2010 08:15, Aurelien Jarno wrote:
> Please unblock package libusb
>
> I have just uploaded a new libusb version which fixes a crash with some
> devices that have non-common interface descriptors (Apple devices
> mainly).
>
> The structure contains two pointers that are not always initialized to
> NULL when the code leaves the while loop before the end. In that case
> calling free on the pointers later causes a crash.

Unblocked.

Regards,

Adam



--- End Message ---

Reply to: