projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Input: powermate - fix oops with malicious USB descriptors
[firefly-linux-kernel-4.4.55.git]
/
drivers
/
input
/
misc
/
powermate.c
diff --git
a/drivers/input/misc/powermate.c
b/drivers/input/misc/powermate.c
index 63b539d3dabae13ce7d1cb12fe19322f655043fd..84909a12ff36c231e7bcfc545bc2ce180c6cd26f 100644
(file)
--- a/
drivers/input/misc/powermate.c
+++ b/
drivers/input/misc/powermate.c
@@
-307,6
+307,9
@@
static int powermate_probe(struct usb_interface *intf, const struct usb_device_i
int error = -ENOMEM;
interface = intf->cur_altsetting;
int error = -ENOMEM;
interface = intf->cur_altsetting;
+ if (interface->desc.bNumEndpoints < 1)
+ return -EINVAL;
+
endpoint = &interface->endpoint[0].desc;
if (!usb_endpoint_is_int_in(endpoint))
return -EIO;
endpoint = &interface->endpoint[0].desc;
if (!usb_endpoint_is_int_in(endpoint))
return -EIO;