lkml.org 
[lkml]   [2017]   [Jul]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.16 062/178] Input: sur40 - validate number of endpoints before using them
    3.16.46-rc1 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: Ben Hutchings <ben@decadent.org.uk>
    ---
    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-07-16 16:16    [W:4.095 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site