Hi Stefan, 

Stefan Lesicnik wrote:

> I am busy patching these CVE's in Ubuntu and will forward the relevant
> patches to Debian once done.

For the record I wrote that last week (and got too busy again just
afterwards):

  Thanks; I had a quick look at them [the subversion revisions] and
  they apply cleanly onto 1.0.2, except for changes to packet-usb.c
  where trailing whitespaces are touched but they are easy enough to
  remove (cleaned patch attached, note it only has changes related to
  packet-usb.c while the commit also touch packet-btrfcomm.c).

You will find the modified patch to packet-usb.c attached.


        Frederic
--- trunk/epan/dissectors/packet-usb.c	2008/10/02 04:45:56	26332
+++ trunk/epan/dissectors/packet-usb.c	2008/10/02 04:55:51	26333
@@ -523,10 +523,9 @@
     usb_conv_info = conversation_get_proto_data(conversation, proto_usb);
     if(!usb_conv_info){
         /* no not yet so create some */
-        usb_conv_info = se_alloc(sizeof(usb_conv_info_t));
+        usb_conv_info = se_alloc0(sizeof(usb_conv_info_t));
         usb_conv_info->interfaceClass=IF_CLASS_UNKNOWN;
         usb_conv_info->transactions=se_tree_create_non_persistent(EMEM_TREE_TYPE_RED_BLACK, "usb transactions");
-        usb_conv_info->class_data=NULL;
 
         conversation_add_proto_data(conversation, proto_usb, usb_conv_info);
     }
@@ -785,10 +784,9 @@
     /* save the class so we can access it later in the endpoint descriptor */
     usb_conv_info->interfaceClass=tvb_get_guint8(tvb, offset);
     if(!pinfo->fd->flags.visited){
-        usb_trans_info->interface_info=se_alloc(sizeof(usb_conv_info_t));
+        usb_trans_info->interface_info=se_alloc0(sizeof(usb_conv_info_t));
         usb_trans_info->interface_info->interfaceClass=tvb_get_guint8(tvb, offset);
         usb_trans_info->interface_info->transactions=se_tree_create_non_persistent(EMEM_TREE_TYPE_RED_BLACK, "usb transactions");
-        usb_trans_info->interface_info->class_data=NULL;
     }
     offset++;
 
@@ -1393,12 +1391,9 @@
         /* this is a request */
         usb_trans_info=se_tree_lookup32(usb_conv_info->transactions, pinfo->fd->num);
         if(!usb_trans_info){
-            usb_trans_info=se_alloc(sizeof(usb_trans_info_t));
+            usb_trans_info=se_alloc0(sizeof(usb_trans_info_t));
             usb_trans_info->request_in=pinfo->fd->num;
-            usb_trans_info->response_in=0;
             usb_trans_info->req_time=pinfo->fd->abs_ts;
-            usb_trans_info->requesttype=0;
-            usb_trans_info->request=0;
             se_tree_insert32(usb_conv_info->transactions, pinfo->fd->num, usb_trans_info);
         }
         usb_conv_info->usb_trans_info=usb_trans_info;

Reply via email to