Commit 794744ab authored by Johan Hovold's avatar Johan Hovold
Browse files

USB: serial: mos7840: fix status-register error handling



Add missing transfer-length sanity check to the status-register
completion handler to avoid leaking bits of uninitialised slab data to
user space.

Fixes: 3f542974 ("USB: Moschip 7840 USB-Serial Driver")
Cc: stable <stable@vger.kernel.org>     # 2.6.19
Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
parent 01b3cdfc
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -468,6 +468,9 @@ static void mos7840_control_callback(struct urb *urb)
	}

	dev_dbg(dev, "%s urb buffer size is %d\n", __func__, urb->actual_length);
	if (urb->actual_length < 1)
		goto out;

	dev_dbg(dev, "%s mos7840_port->MsrLsr is %d port %d\n", __func__,
		mos7840_port->MsrLsr, mos7840_port->port_num);
	data = urb->transfer_buffer;