OpenCloudOS-Kernel/drivers/usb/serial
Johan Hovold 2d5a9c72d0 USB: serial: ch341: fix control-message error handling
A short control transfer would currently fail to be detected, something
which could lead to stale buffer data being used as valid input.

Check for short transfers, and make sure to log any transfer errors.

Note that this also avoids leaking heap data to user space (TIOCMGET)
and the remote device (break control).

Fixes: 6ce7610478 ("USB: Driver for CH341 USB-serial adaptor")
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Johan Hovold <johan@kernel.org>
2017-01-11 12:08:57 +01:00
..
Kconfig USB: serial: add Fintek F81532/534 driver 2016-11-29 11:13:16 +01:00
Makefile USB: serial: add Fintek F81532/534 driver 2016-11-29 11:13:16 +01:00
Makefile-keyspan_pda_fw
aircable.c USB: serial: correct spelling mistakes in comments 2014-01-03 12:39:31 -08:00
ark3116.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
belkin_sa.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
belkin_sa.h
bus.c USB: serial: clean up bus probe error handling 2015-02-26 17:13:05 +01:00
ch341.c USB: serial: ch341: fix control-message error handling 2017-01-11 12:08:57 +01:00
console.c tty: Replace ASYNC_INITIALIZED bit and update atomically 2016-04-30 09:26:55 -07:00
cp210x.c USB-serial updates for v4.10-rc1 2016-12-01 16:12:12 +01:00
cyberjack.c USB: serial: cyberjack: fix NULL-deref at open 2017-01-04 10:37:14 +01:00
cypress_m8.c USB: cypress_m8: add endpoint sanity check 2016-03-31 09:28:46 -07:00
cypress_m8.h USB: cypress_m8: only wake up MSR queue on changes 2014-01-03 12:42:24 -08:00
digi_acceleport.c tty: Replace TTY_THROTTLED bit tests with tty_throttled() 2016-04-30 09:26:55 -07:00
empeg.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
ezusb_convert.pl
f81232.c USB: f81232: fix some minor style issues 2015-03-27 17:36:29 +01:00
f81534.c USB: serial: f81534: detect errors from f81534_logic_to_phy_port() 2017-01-02 10:31:08 +01:00
ftdi_sio.c USB-serial updates for v4.10-rc1 2016-12-01 16:12:12 +01:00
ftdi_sio.h USB: serial: fix compare_const_fl.cocci warnings 2016-02-28 14:35:58 +01:00
ftdi_sio_ids.h USB: serial: ftdi_sio: add support for TI CC3200 LaunchPad 2016-11-07 10:23:03 +01:00
garmin_gps.c USB: serial: garmin_gps: fix memory leak on failed URB submit 2017-01-04 10:37:15 +01:00
generic.c USB: serial: use variable for status 2016-07-16 12:45:39 +02:00
io_16654.h
io_edgeport.c USB: serial: io_edgeport: fix NULL-deref at open 2017-01-04 10:37:15 +01:00
io_edgeport.h
io_ionsp.h
io_tables.h
io_ti.c USB: serial: io_ti: bind to interface after fw download 2017-01-04 10:37:17 +01:00
io_ti.h
io_usbvend.h USB: io_ti: fix firmware download on big-endian machines (part 2) 2014-05-27 15:12:57 -07:00
ipaq.c USB: ipaq.c: fix a timeout loop 2015-12-18 09:30:34 -08:00
ipw.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
ir-usb.c USB: serial: remove redundant OOM messages 2014-01-03 12:31:46 -08:00
iuu_phoenix.c USB: serial: iuu_phoenix: fix NULL-deref at open 2017-01-04 10:37:18 +01:00
iuu_phoenix.h
keyspan.c USB: serial: keyspan: fix debug and error messages 2016-05-10 09:39:57 +02:00
keyspan.h
keyspan_pda.c USB: serial: keyspan_pda: verify endpoints at probe 2017-01-04 10:37:18 +01:00
keyspan_usa26msg.h USB: serial: correct spelling mistakes in comments 2014-01-03 12:39:31 -08:00
keyspan_usa28msg.h
keyspan_usa49msg.h
keyspan_usa67msg.h
keyspan_usa90msg.h
kl5kusb105.c USB: serial: kl5kusb105: fix line-state error handling 2017-01-10 16:42:26 +01:00
kl5kusb105.h
kobil_sct.c USB: serial: kobil_sct: fix NULL-deref in write 2017-01-04 10:37:18 +01:00
kobil_sct.h
mct_u232.c USB: mct_u232: add sanity checking in probe 2016-03-31 09:28:46 -07:00
mct_u232.h
metro-usb.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
mos7720.c USB: serial: mos7720: remove obsolete port initialisation 2017-01-04 10:37:20 +01:00
mos7840.c USB: serial: mos7840: fix misleading interrupt-URB comment 2017-01-04 10:37:21 +01:00
mxuport.c USB patches for 4.7-rc1 2016-05-20 21:12:25 -07:00
navman.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
omninet.c USB: serial: omninet: fix NULL-derefs at open and disconnect 2017-01-04 10:37:21 +01:00
opticon.c USB: serial: fix invalid user-pointer checks 2016-11-11 17:54:04 +01:00
option.c USB: serial: option: add dlink dwm-158 2016-12-09 11:44:11 +01:00
oti6858.c USB: serial: oti6858: fix NULL-deref at open 2017-01-04 10:43:48 +01:00
oti6858.h
pl2303.c USB: serial: pl2303: fix NULL-deref at open 2017-01-04 10:43:56 +01:00
pl2303.h USB: pl2303: Remove support for Samsung I330 2015-04-29 12:34:24 +02:00
qcaux.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
qcserial.c USB: qcserial: add Sierra Wireless EM74xx device ID 2016-03-02 09:35:32 +01:00
quatech2.c USB: serial: quatech2: fix sleep-while-atomic in close 2017-01-04 10:43:56 +01:00
safe_serial.c USB: serial: fix boolinit.cocci warnings 2016-02-28 14:36:53 +01:00
sierra.c tty: Replace ASYNC_INITIALIZED bit and update atomically 2016-04-30 09:26:55 -07:00
spcp8x5.c USB: serial: spcp8x5: fix NULL-deref at open 2017-01-04 10:43:57 +01:00
ssu100.c USB: serial: fix invalid user-pointer checks 2016-11-11 17:54:04 +01:00
symbolserial.c USB: symbolserial: Correct transferred data size 2015-08-18 10:06:22 -07:00
ti_usb_3410_5052.c USB: serial: ti_usb_3410_5052: fix NULL-deref at open 2017-01-04 10:43:57 +01:00
usb-serial-simple.c USB: serial: simple: add support for another Infineon flashloader 2016-09-12 10:19:41 +02:00
usb-serial.c USB: serial: fix potential NULL-dereference at probe 2016-10-21 16:47:17 +02:00
usb-wwan.h USB: usb_wwan/option: generalize option_send_setup for other drivers 2015-10-09 12:42:40 +02:00
usb_debug.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
usb_wwan.c USB: serial: fix invalid user-pointer checks 2016-11-11 17:54:04 +01:00
visor.c USB: serial: visor: fix crash on detecting device without write_urbs 2016-01-25 11:40:45 +01:00
visor.h USB: serial: correct spelling mistakes in comments 2014-01-03 12:39:31 -08:00
whiteheat.c USB: whiteheat: fix potential null-deref at probe 2015-09-23 12:15:19 -07:00
whiteheat.h
wishbone-serial.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
xsens_mt.c usb: serial: xsens_mt: always bind to interface number 1 2014-09-04 11:18:26 +02:00