USB: serial: mos7840: fix status-register error handling
Subsystems (3)
Johan Hovold
maintainerPATCH 2/4 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 3f5429746d91 ("USB: Moschip 7840 USB-Serial Driver")
Cc stable <[email protected]> # 2.6.19
Cc Paul B Schroeder <[email protected]>
Signed-off-by Johan Hovold <[email protected]>
--- drivers/usb/serial/mos7840.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/usb/serial/mos7840.c +3 -0
@@ -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;