diff options
author | Rupesh Gujare <rupesh.gujare@atmel.com> | 2013-08-22 16:38:49 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-22 17:15:55 (GMT) |
commit | d236dc11a17e8fa29c1b4e0ecc8cf5b9bcc7fcf5 (patch) | |
tree | 1e270d507a4070f8620bfafb6ca017046e733219 /drivers/staging | |
parent | 0a7bfbffbd9a94a31a4bac7e9ec29d18adc8e198 (diff) | |
download | linux-d236dc11a17e8fa29c1b4e0ecc8cf5b9bcc7fcf5.tar.xz |
staging: ozwpan: Check error condition before creating endpoint.
Check if interface number is correct before creating an end point.
Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/ozwpan/ozhcd.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/staging/ozwpan/ozhcd.c b/drivers/staging/ozwpan/ozhcd.c index 4682d78..d5a3900 100644 --- a/drivers/staging/ozwpan/ozhcd.c +++ b/drivers/staging/ozwpan/ozhcd.c @@ -1247,6 +1247,8 @@ static int oz_build_endpoints_for_interface(struct usb_hcd *hcd, int request_heartbeat = 0; oz_dbg(ON, "interface[%d] = %p\n", if_ix, intf); + if (if_ix >= port->num_iface || port->iface == NULL) + return -ENOMEM; for (i = 0; i < intf->desc.bNumEndpoints; i++) { struct usb_host_endpoint *hep = &intf->endpoint[i]; u8 ep_addr = hep->desc.bEndpointAddress; |