Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 36de70ea authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'usb-serial-4.9-rc2' of...

Merge tag 'usb-serial-4.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial

 into usb-linus

Johan writes:

USB-serial fixes for v4.9-rc2

Here's a fix for a NULL-deref during probe which could be triggered by a
malicious device, and a fix for some missing error handling in cp210x
that also leaked some bits from the stack. Included is also a new device
id for ftdi_sio.

Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
parents 7d3b016a 126d26f6
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -1077,7 +1077,9 @@ static int cp210x_tiocmget(struct tty_struct *tty)
	u8 control;
	int result;

	cp210x_read_u8_reg(port, CP210X_GET_MDMSTS, &control);
	result = cp210x_read_u8_reg(port, CP210X_GET_MDMSTS, &control);
	if (result)
		return result;

	result = ((control & CONTROL_DTR) ? TIOCM_DTR : 0)
		|((control & CONTROL_RTS) ? TIOCM_RTS : 0)
+2 −1
Original line number Diff line number Diff line
@@ -986,7 +986,8 @@ static const struct usb_device_id id_table_combined[] = {
	/* ekey Devices */
	{ USB_DEVICE(FTDI_VID, FTDI_EKEY_CONV_USB_PID) },
	/* Infineon Devices */
	{ USB_DEVICE_INTERFACE_NUMBER(INFINEON_VID, INFINEON_TRIBOARD_PID, 1) },
	{ USB_DEVICE_INTERFACE_NUMBER(INFINEON_VID, INFINEON_TRIBOARD_TC1798_PID, 1) },
	{ USB_DEVICE_INTERFACE_NUMBER(INFINEON_VID, INFINEON_TRIBOARD_TC2X7_PID, 1) },
	/* GE Healthcare devices */
	{ USB_DEVICE(GE_HEALTHCARE_VID, GE_HEALTHCARE_NEMO_TRACKER_PID) },
	/* Active Research (Actisense) devices */
+3 −2
Original line number Diff line number Diff line
@@ -627,7 +627,8 @@
 * Infineon Technologies
 */
#define INFINEON_VID		        0x058b
#define INFINEON_TRIBOARD_PID	0x0028 /* DAS JTAG TriBoard TC1798 V1.0 */
#define INFINEON_TRIBOARD_TC1798_PID	0x0028 /* DAS JTAG TriBoard TC1798 V1.0 */
#define INFINEON_TRIBOARD_TC2X7_PID	0x0043 /* DAS JTAG TriBoard TC2X7 V1.0 */

/*
 * Acton Research Corp.
+2 −1
Original line number Diff line number Diff line
@@ -1078,6 +1078,7 @@ static int usb_serial_probe(struct usb_interface *interface,

	serial->disconnected = 0;

	if (num_ports > 0)
		usb_serial_console_init(serial->port[0]->minor);
exit:
	module_put(type->driver.owner);