ChangeSet 1.1117.2.4, 2003/02/28 13:41:54-08:00, [EMAIL PROTECTED]

[PATCH] USB speedtouch: handle usb_string failure


 drivers/usb/misc/speedtouch.c |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)


diff -Nru a/drivers/usb/misc/speedtouch.c b/drivers/usb/misc/speedtouch.c
--- a/drivers/usb/misc/speedtouch.c     Fri Feb 28 14:48:18 2003
+++ b/drivers/usb/misc/speedtouch.c     Fri Feb 28 14:48:18 2003
@@ -892,7 +892,6 @@
        int ifnum = intf->altsetting->desc.bInterfaceNumber;
        struct udsl_instance_data *instance;
        unsigned char mac_str [13];
-       unsigned char mac [6];
        int i, length;
        char *buf;
 
@@ -995,13 +994,10 @@
        instance->atm_dev->link_rate = 128 * 1000 / 424;
 
        /* set MAC address, it is stored in the serial number */
-       usb_string (instance->usb_dev, instance->usb_dev->descriptor.iSerialNumber, 
mac_str, 13);
-       for (i = 0; i < 6; i++)
-               mac[i] = (hex2int (mac_str[i * 2]) * 16) + (hex2int (mac_str[i * 2 + 
1]));
-
-       dbg ("MAC is %02x:%02x:%02x:%02x:%02x:%02x", mac[0], mac[1], mac[2], mac[3], 
mac[4], mac[5]);
-
-       memcpy (instance->atm_dev->esi, mac, 6);
+       memset (instance->atm_dev->esi, 0, sizeof (instance->atm_dev->esi));
+       if (usb_string (dev, dev->descriptor.iSerialNumber, mac_str, sizeof (mac_str)) 
== 12)
+               for (i = 0; i < 6; i++)
+                       instance->atm_dev->esi[i] = (hex2int (mac_str[i * 2]) * 16) + 
(hex2int (mac_str[i * 2 + 1]));
 
        /* device description */
        buf = instance->description;



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to