Files
linux/drivers/hid
Kees Cook 9f125af2d4 HID: core: fix validation of report id 0
commit 1b15d2e5b8 upstream.

Some drivers use the first HID report in the list instead of using an
index. In these cases, validation uses ID 0, which was supposed to mean
"first known report". This fixes the problem, which was causing at least
the lgff family of devices to stop working since hid_validate_values
was being called with ID 0, but the devices used single numbered IDs
for their reports:

0x05, 0x01,         /*  Usage Page (Desktop),                   */
0x09, 0x05,         /*  Usage (Gamepad),                        */
0xA1, 0x01,         /*  Collection (Application),               */
0xA1, 0x02,         /*      Collection (Logical),               */
0x85, 0x01,         /*          Report ID (1),                  */
...

Reported-by: Simon Wood <simon@mungewell.org>
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-06-30 20:09:42 -07:00
..
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-04-24 16:32:27 +02:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00
2013-01-03 10:27:31 +01:00