Input: uinput - fix undefined behavior in uinput_validate_absinfo()
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 14 Jan 2019 21:54:55 +0000 (13:54 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2019 07:12:35 +0000 (08:12 +0100)
commita3c841af7dee74107a9b6baf0af67457c075cdd2
tree9f0b67df8496f8a65995809caf457e4a40d72310
parent1777fa9611fcf295e72f030ca4900c5356cb8bd3
Input: uinput - fix undefined behavior in uinput_validate_absinfo()

commit d77651a227f8920dd7ec179b84e400cce844eeb3 upstream.

An integer overflow may arise in uinput_validate_absinfo() if "max - min"
can't be represented by an "int". We should check for overflow before
trying to use the result.

Reported-by: Kyungtae Kim <kt0755@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/input/misc/uinput.c