diff options
author | Johan Hovold <johan@kernel.org> | 2017-03-07 13:14:13 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-05-25 09:44:39 -0400 |
commit | c71b5040632f90131e62ecdc83063179cc2ae7af (patch) | |
tree | 77db162880d41963ae4d932a184647aef80b2482 /drivers | |
parent | 736f41a47442c164e3cdc8d2a980d3155130163f (diff) |
mceusb: fix NULL-deref at probe
commit 03eb2a557ed552e920a0942b774aaf931596eec1 upstream.
Make sure to check for the required out endpoint to avoid dereferencing
a NULL-pointer in mce_request_packet should a malicious device lack such
an endpoint. Note that this path is hit during probe.
Fixes: 66e89522aff7 ("V4L/DVB: IR: add mceusb IR receiver driver")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/rc/mceusb.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/media/rc/mceusb.c b/drivers/media/rc/mceusb.c index 4f8c7effdcee..db525cdfac88 100644 --- a/drivers/media/rc/mceusb.c +++ b/drivers/media/rc/mceusb.c | |||
@@ -1332,8 +1332,8 @@ static int mceusb_dev_probe(struct usb_interface *intf, | |||
1332 | } | 1332 | } |
1333 | } | 1333 | } |
1334 | } | 1334 | } |
1335 | if (ep_in == NULL) { | 1335 | if (!ep_in || !ep_out) { |
1336 | dev_dbg(&intf->dev, "inbound and/or endpoint not found"); | 1336 | dev_dbg(&intf->dev, "required endpoints not found\n"); |
1337 | return -ENODEV; | 1337 | return -ENODEV; |
1338 | } | 1338 | } |
1339 | 1339 | ||