Memleak in KOBIL USB Smart Card Terminal Driver

From: Oleg Drokin (green@linuxhacker.ru)
Date: Wed Mar 12 2003 - 15:00:50 EST


Hello!

   There is a memleak on error exit path in KOBIL USB Smart Card Terminal
   Driver in both current 2.4 and 2.5.
   See the patch.
   Found with help of smatch + enhanced unfree script.

Bye,
    Oleg

===== drivers/usb/serial/kobil_sct.c 1.2 vs edited =====
--- 1.2/drivers/usb/serial/kobil_sct.c Wed Dec 11 03:31:09 2002
+++ edited/drivers/usb/serial/kobil_sct.c Wed Mar 12 22:57:33 2003
@@ -254,6 +254,7 @@
                 port->write_urb = usb_alloc_urb(0);
                 if (!port->write_urb) {
                         dbg("%s - port %d usb_alloc_urb failed", __FUNCTION__, port->number);
+ kfree(transfer_buffer);
                         return -1;
                 }
         }
@@ -261,6 +262,7 @@
         // allocate memory for write_urb transfer buffer
         port->write_urb->transfer_buffer = (unsigned char *) kmalloc(write_urb_transfer_buffer_length, GFP_KERNEL);
         if (! port->write_urb->transfer_buffer) {
+ kfree(transfer_buffer);
                 return -1;
         }
 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Mar 15 2003 - 22:00:32 EST