USB: Avoid NULL pointer deref in usb_hcd_alloc_bandwidth.
usb_ifnum_to_if() can return NULL if the USB device does not have a configuration installed (usb_device->actconfig == NULL), or if we can't find the interface number in the installed configuration. Return an error instead of crashing. Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
This commit is contained in:
@@ -1775,6 +1775,8 @@ int usb_hcd_alloc_bandwidth(struct usb_device *udev,
|
|||||||
struct usb_interface *iface = usb_ifnum_to_if(udev,
|
struct usb_interface *iface = usb_ifnum_to_if(udev,
|
||||||
cur_alt->desc.bInterfaceNumber);
|
cur_alt->desc.bInterfaceNumber);
|
||||||
|
|
||||||
|
if (!iface)
|
||||||
|
return -EINVAL;
|
||||||
if (iface->resetting_device) {
|
if (iface->resetting_device) {
|
||||||
/*
|
/*
|
||||||
* The USB core just reset the device, so the xHCI host
|
* The USB core just reset the device, so the xHCI host
|
||||||
|
Reference in New Issue
Block a user