Input: leds - fix out of bound access
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 6 Apr 2018 17:23:05 +0000 (10:23 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Wed, 11 Apr 2018 21:52:59 +0000 (14:52 -0700)
commit6bd6ae639683c0b41f46990d5c64ff9fbfa019dc
tree6c6b208922fdf50ddddf3e072048d6e07cb2fa5a
parent839c42273617787318da7baf6151d553108f5e17
Input: leds - fix out of bound access

UI_SET_LEDBIT ioctl() causes the following KASAN splat when used with
led > LED_CHARGING:

[ 1274.663418] BUG: KASAN: slab-out-of-bounds in input_leds_connect+0x611/0x730 [input_leds]
[ 1274.663426] Write of size 8 at addr ffff88003377b2c0 by task ckb-next-daemon/5128

This happens because we were writing to the led structure before making
sure that it exists.

Reported-by: Tasos Sahanidis <tasos@tasossah.com>
Tested-by: Tasos Sahanidis <tasos@tasossah.com>
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/input-leds.c