summaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/ssu100.c
diff options
context:
space:
mode:
authorBill Pemberton <wfp5p@virginia.edu>2010-08-05 17:01:06 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-08-23 20:50:15 -0700
commit9b2cef31f2823558eb92a35624d37439599f3f9f (patch)
treea0204b8573ef9695bed6db1373b671d055c5ced9 /drivers/usb/serial/ssu100.c
parent175230587bcca6dee0a1d6832a8a2138e32ab6ab (diff)
USB: ssu100: refine process_packet in ssu100
The status information does not appear at the start of each incoming packet so the check for len < 4 at the start of ssu100_process_packet is wrong. Remove it. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/serial/ssu100.c')
-rw-r--r--drivers/usb/serial/ssu100.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/usb/serial/ssu100.c b/drivers/usb/serial/ssu100.c
index 2826f013752..c7193880a2b 100644
--- a/drivers/usb/serial/ssu100.c
+++ b/drivers/usb/serial/ssu100.c
@@ -575,12 +575,8 @@ static int ssu100_process_packet(struct tty_struct *tty,
dbg("%s - port %d", __func__, port->number);
- if (len < 4) {
- dbg("%s - malformed packet", __func__);
- return 0;
- }
-
- if ((packet[0] == 0x1b) && (packet[1] == 0x1b) &&
+ if ((len >= 4) &&
+ (packet[0] == 0x1b) && (packet[1] == 0x1b) &&
((packet[2] == 0x00) || (packet[2] == 0x01))) {
if (packet[2] == 0x00)
priv->shadowLSR = packet[3] & (SERIAL_LSR_OE |