mceusb: fix NULL-deref at probe
authorJohan Hovold <johan@kernel.org>
Tue, 7 Mar 2017 18:14:13 +0000 (15:14 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 May 2017 12:30:12 +0000 (14:30 +0200)
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>
drivers/media/rc/mceusb.c

index 2cdb740cde481e2e8884b7ddb05c90f6f399a954..f838d9c7ed1234ff9d93a069b0aa04dc622a198c 100644 (file)
@@ -1321,8 +1321,8 @@ static int mceusb_dev_probe(struct usb_interface *intf,
                        }
                }
        }
-       if (ep_in == NULL) {
-               dev_dbg(&intf->dev, "inbound and/or endpoint not found");
+       if (!ep_in || !ep_out) {
+               dev_dbg(&intf->dev, "required endpoints not found\n");
                return -ENODEV;
        }