lkml.org 
[lkml]   [2017]   [Apr]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.18 084/124] Input: sur40 - validate number of endpoints before using them
    Date
    3.18-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Johan Hovold <johan@kernel.org>

    commit 92461f5d723037530c1f36cce93640770037812c upstream.

    Make sure to check the number of endpoints to avoid dereferencing a
    NULL-pointer or accessing memory that lie beyond the end of the endpoint
    array should a malicious device lack the expected endpoints.

    Fixes: bdb5c57f209c ("Input: add sur40 driver for Samsung SUR40... ")
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/input/touchscreen/sur40.c | 3 +++
    1 file changed, 3 insertions(+)

    --- a/drivers/input/touchscreen/sur40.c
    +++ b/drivers/input/touchscreen/sur40.c
    @@ -361,6 +361,9 @@ static int sur40_probe(struct usb_interf
    if (iface_desc->desc.bInterfaceClass != 0xFF)
    return -ENODEV;

    + if (iface_desc->desc.bNumEndpoints < 5)
    + return -ENODEV;
    +
    /* Use endpoint #4 (0x86). */
    endpoint = &iface_desc->endpoint[4].desc;
    if (endpoint->bEndpointAddress != TOUCH_ENDPOINT)

    \
     
     \ /
      Last update: 2017-04-20 08:40    [W:2.368 / U:0.032 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site