• David Herrmann's avatar
    Input: uinput - return -EINVAL when read buffer size is too small · f40033ac
    David Herrmann authored
    Let's check whether the user-supplied buffer is actually big enough and
    return -EINVAL if it is not. This differs from current behavior, which
    caused 0 to be returned and actually does not make any sense, as
    broken application will simply repeat the read getting into endless
    loop.
    
    Note that we treat 0 as a special case, according to the standard:
    
    "Before any action described below is taken, and if nbyte is zero,
    the read() function may detect and return errors as described below.
    In the absence of errors, or if error detection is not performed,
    the read() function shall return zero and have no other results."
    Signed-off-by: default avatarDavid Herrmann <dh.herrmann@googlemail.com>
    Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
    f40033ac
uinput.c 19.7 KB