OSDN Git Service

rt2x00:correct rx packet length for USB devices
authorAdam Baker <linux@baker-net.org.uk>
Sun, 9 Mar 2008 21:43:27 +0000 (22:43 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 13 Mar 2008 20:02:35 +0000 (16:02 -0400)
When fixing up the packet alignment, if we had to add 2 bytes to the front of
the skb we need to remember to take them off the end afterwards. This fixes
reception of encrypted packets which were otherwise failing with an invalid
ICV.

Signed-off-by: Adam Baker <linux@baker-net.org.uk>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/rt2x00/rt2x00usb.c

index eec9111..5a33167 100644 (file)
@@ -299,6 +299,7 @@ static void rt2x00usb_interrupt_rxdone(struct urb *urb)
                memmove(entry->skb->data, entry->skb->data + 2,
                        entry->skb->len - 2);
                skbdesc->data = entry->skb->data;
+               skb_trim(entry->skb,entry->skb->len - 2);
        }
 
        /*