From: Inaky Perez-Gonzalez Date: Wed, 1 Aug 2007 03:33:57 +0000 (-0700) Subject: usb: introduce usb_device authorization bits X-Git-Tag: v2.6.24-rc1~1395^2~116 X-Git-Url: http://www.pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=da04b7a42711c1d1d8d9fbc2565cdd83efcfee40;p=linux-2.6-omap-h63xx.git usb: introduce usb_device authorization bits This just modifies 'struct usb_device' to contain the 'authorized' bit. It also adds a 'wusb' bit. This is needed because nonauthorized (and thus non-authenticated) wusb devices will fail certain kind of simple requests (such as string descriptors). By knowing the device is WUSB, we just avoid them. Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman --- diff --git a/include/linux/usb.h b/include/linux/usb.h index a51f34e8057..92d63c6b6fc 100644 --- a/include/linux/usb.h +++ b/include/linux/usb.h @@ -346,6 +346,11 @@ struct usb_tt; * * Usbcore drivers should not set usbdev->state directly. Instead use * usb_set_device_state(). + * + * @authorized: (user space) policy determines if we authorize this + * device to be used or not. By default, wired USB + * devices are authorized. WUSB devices are not, until we + * authorize them from user space. FIXME -- complete doc */ struct usb_device { int devnum; /* Address on USB bus */ @@ -380,6 +385,8 @@ struct usb_device { unsigned discon_suspended:1; /* Disconnected while suspended */ unsigned have_langid:1; /* whether string_langid is valid */ + unsigned authorized:1; /* Policy has determined we can use it */ + unsigned wusb:1; /* Device is Wireless USB */ int string_langid; /* language ID for strings */ /* static strings from the device */