summaryrefslogtreecommitdiffstats
path: root/drivers/hid/hid-steelseries.c
Commit message (Collapse)AuthorAgeFilesLines
* HID: steelseries: validate output report detailsKees Cook2013-09-131-0/+5
| | | | | | | | | | | | | | | | | A HID device could send a malicious output report that would cause the steelseries HID driver to write beyond the output report allocation during initialization, causing a heap overflow: [ 167.981534] usb 1-1: New USB device found, idVendor=1038, idProduct=1410 ... [ 182.050547] BUG kmalloc-256 (Tainted: G W ): Redzone overwritten CVE-2013-2891 Signed-off-by: Kees Cook <keescook@chromium.org> Cc: stable@vger.kernel.org Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: hid-steelseries fix led class build issueSimon Wood2013-05-031-3/+6
| | | | | | | | | | | | | | | | | | | | Fixes 'undefined reference' issue when hid-steelseries is built in, but led-class is a module. -- drivers/built-in.o: In function `steelseries_srws1_remove': hid-steelseries.c:(.text+0x3b97a1): undefined reference to `led_classdev_unregister' drivers/built-in.o: In function `steelseries_srws1_probe': hid-steelseries.c:(.text+0x3b9c51): undefined reference to `led_classdev_register' hid-steelseries.c:(.text+0x3b9ce5): undefined reference to `led_classdev_register' hid-steelseries.c:(.text+0x3b9d4b): undefined reference to `led_classdev_unregister' -- Patch allows LED control when led-class is built in, or both hid-steelseries _and_ led-class are both modules. Reported-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Simon Wood <simon@mungewell.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
*-. Merge branches 'for-3.10/multitouch', 'for-3.10/roccat' and ↵Jiri Kosina2013-04-301-12/+1Star
|\ \ | | | | | | | | | | | | | | | | | | 'for-3.10/upstream' into for-linus Conflicts: drivers/hid/Kconfig
| | * HID: steelseries: use module_hid_driver() to simplify the codeWei Yongjun2013-03-181-12/+1Star
| |/ | | | | | | | | | | | | | | module_hid_driver() makes the code simpler by eliminating boilerplate code.. Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* / HID: use hid_hw_request() instead of direct call to usbhidBenjamin Tissoires2013-02-251-2/+1Star
|/ | | | | | | | | | | | | | | | | | | This allows the hid drivers to be independent from the transport layer. The patch was constructed by replacing all occurences of usbhid_submit_report() by its hid_hw_request() counterpart. Then, drivers not requiring USB_HID anymore have their USB_HID dependency cleaned in the Kconfig file. Finally, few drivers still depends on USB_HID. Many of them are requiring the io wait callback. They are found in the next patch. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> For the sensor-hub part: Tested-by: Mika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: steelseries: fix out of bound array accessJiri Kosina2013-01-311-1/+2
| | | | | | | | The last field of the driver_data->leds[] array is used to store the special toggle for setting all leds simultaneously, so we need to allocate appropriate number of led_classdev pointers. Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: steelseries: rename driver to be compliant with other driversJiri Kosina2013-01-311-0/+392
We usually group drivers on a per-vendor basis, implementing device-specific deviations from the standard in vendor-specific driver. Signed-off-by: Jiri Kosina <jkosina@suse.cz>