linux/drivers/input/misc
Vladis Dronov 7ea6b63a62 Input: ati_remote2 - fix crashes on detecting device with invalid descriptor
commit 950336ba3e upstream.

The ati_remote2 driver expects at least two interfaces with one
endpoint each. If given malicious descriptor that specify one
interface or no endpoints, it will crash in the probe function.
Ensure there is at least two interfaces and one endpoint for each
interface before using it.

The full disclosure: http://seclists.org/bugtraq/2016/Mar/90

Reported-by: Ralf Spenneberg <ralf@spenneberg.net>
Signed-off-by: Vladis Dronov <vdronov@redhat.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Moritz Muehlenhoff <jmm@inutil.org>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
History 2016-03-30 14:49:09 +01:00
..
88pm80x_onkey.c Input: remove use of __devexit 2012-11-24 00:05:38 -08:00
88pm860x_onkey.c Input: 88pm860x_onkey - switch to using managed resources 2014-05-29 00:26:34 -07:00
ab8500-ponkey.c Input: ab8500-ponkey - switch to using managed resources 2014-05-29 00:26:36 -07:00
ad714x-i2c.c Input: ad714x - add CONFIG_PM_SLEEP to suspend/resume functions 2013-03-26 22:09:55 -07:00
ad714x-spi.c Input: ad714x-spi - remove redundant spi_set_drvdata 2013-09-20 09:58:24 -07:00
ad714x.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
ad714x.h Input: ad714x - read the interrupt status registers in a row 2011-08-22 09:59:26 -07:00
adxl34x-i2c.c Input: adxl34x - add CONFIG_PM_SLEEP to suspend/resume functions 2013-03-26 22:09:51 -07:00
adxl34x-spi.c Input: adxl34x - use spi_get_drvdata() 2013-04-07 21:02:29 -07:00
adxl34x.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
adxl34x.h Input: adxl34 - make enable/disable separate from suspend/resume 2010-07-03 13:13:21 -07:00
apanel.c Input: make i2c device ids constant 2010-01-09 23:28:33 -08:00
arizona-haptics.c ASoC: dapm: Add locking to snd_soc_dapm_xxxx_pin functions 2014-02-20 18:40:07 +09:00
ati_remote2.c Input: ati_remote2 - fix crashes on detecting device with invalid descriptor 2016-03-30 14:49:09 +01:00
atlas_btns.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-01-24 17:17:30 -08:00
bfin_rotary.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
bma150.c Input: bma150 - extend chip detection for bma180 2014-04-24 23:53:10 -07:00
cm109.c Input: cm109 - convert high volume dev_err() to dev_err_ratelimited() 2013-10-06 01:23:41 -07:00
cma3000_d0x.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
cma3000_d0x.h Input: add CMA3000 accelerometer driver 2010-11-30 23:05:21 -08:00
cma3000_d0x_i2c.c Input: remove use of __devexit 2012-11-24 00:05:38 -08:00
cobalt_btns.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
da9052_onkey.c Input: da9052_onkey - use correct register bit for key status 2014-03-26 13:33:09 -07:00
da9055_onkey.c Input: da9055_onkey - remove use of regmap_irq_get_virq() 2014-04-19 13:55:41 -07:00
dm355evm_keys.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
gp2ap002a00f.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
gpio-beeper.c Input: gpio-beeper - make of_device_id array const 2014-05-14 16:39:55 -07:00
gpio_tilt_polled.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
hp_sdc_rtc.c Input: hp_sdc_rtc - unlock on error in hp_sdc_rtc_read_i8042timer() 2013-11-20 21:15:31 -08:00
ideapad_slidebar.c Input: add driver for slidebar on Lenovo IdeaPad laptops 2013-08-26 09:30:03 -07:00
ims-pcu.c Input: ims-pcu - fix uninitialized use of 'error' in ims_pcu_buffers_alloc() 2014-05-18 22:39:56 -07:00
ixp4xx-beeper.c input: ixp4xx-beeper: don't use symbols from <mach/timex.h> 2013-12-20 11:44:21 +01:00
Kconfig Linux 3.15-rc5 2014-05-14 16:49:19 -07:00
keyspan_remote.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
kxtj9.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
m68kspkr.c Input: m68kspkr - remove redundant platform_set_drvdata() 2013-05-28 00:57:41 -07:00
Makefile Input: add driver for SOC button array 2014-03-30 23:40:56 -07:00
max8925_onkey.c Input: max8925_onkey - switch to using managed resources 2014-05-29 00:26:35 -07:00
max8997_haptic.c Input: max8997_haptic - add error handling for regulator and pwm 2014-06-07 23:20:24 -07:00
mc13783-pwrbutton.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
mma8450.c Input: mma8450 - add missing i2c_set_clientdata() in mma8450_probe() 2013-11-11 00:01:44 -08:00
mpu3050.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pcap_keys.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pcf8574_keypad.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pcf50633-input.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pcspkr.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pm8xxx-vibrator.c Input: pm8xxx-vibrator - add DT match table 2014-03-30 13:25:20 -07:00
pmic8xxx-pwrkey.c Input: pmic8xxx-pwrkey - set sane default for debounce time 2014-05-14 16:40:08 -07:00
powermate.c Input: powermate - fix oops with malicious USB descriptors 2016-03-29 15:55:16 +01:00
pwm-beeper.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
rb532_button.c Input: rb532_button - remove redundant dev_set_drvdata 2013-09-18 07:53:41 -07:00
retu-pwrbutton.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
rotary_encoder.c Input: rotary_encoder - make of_device_id array const 2014-05-14 16:39:56 -07:00
sgi_btns.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
sirfsoc-onkey.c Input: sirfsoc-onkey - fix GPL v2 license string typo 2014-07-18 10:19:42 -07:00
soc_button_array.c Input: soc_button_array - remove duplicate inclusion of input.h 2014-05-28 23:35:17 -07:00
sparcspkr.c Input: misc - use platform_{get,set}_drvdata() 2013-05-23 09:34:13 -07:00
twl4030-pwrbutton.c Input: twl4030-pwrbutton - ensure a wakeup event is recorded. 2015-05-06 11:33:12 +01:00
twl4030-vibra.c Input: twl4030-vibra - add missing of_node_put 2014-01-04 00:47:36 -08:00
twl6040-vibra.c Input: twl6040-vibra - use devm functions 2014-05-14 16:39:47 -07:00
uinput.c Input: uinput - add UI_GET_SYSNAME ioctl to retrieve the sysfs path 2014-02-12 15:00:34 -08:00
wistron_btns.c Input: wistron_btns - add FS AMILO Pro 8210 support 2014-01-27 22:34:42 -08:00
wm831x-on.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
xen-kbdfront.c xen/pvhvm: If xen_platform_pci=0 is set don't blow up (v4). 2014-01-03 14:54:18 -05:00
yealink.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
yealink.h tree-wide: Assorted spelling fixes 2010-02-09 11:13:56 +01:00