hso: IP checksuming doesn't work on GE0301 option cards
authorThomas Bogendoerfer <tsbogend@alpha.franken.de>
Tue, 7 Dec 2010 22:21:52 +0000 (22:21 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 10 Dec 2010 04:42:24 +0000 (20:42 -0800)
There is definitly a problem, that some option cards send up broken
IP pakets leading to corrupted IP packets. These corruptions aren't
detected, because the driver claims that the packets are already
checksummed. This change removes the CHECKSUM_UNNECESSARY option
and let IP detect broken data.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/hso.c

index 62e9e8dc8190d69314529cd42d0d2b7f06228746..812edf85d6d32b017454f449f4d03e300ed4ec50 100644 (file)
@@ -958,10 +958,6 @@ static void packetizeRx(struct hso_net *odev, unsigned char *ip_pkt,
                                /* Packet is complete. Inject into stack. */
                                /* We have IP packet here */
                                odev->skb_rx_buf->protocol = cpu_to_be16(ETH_P_IP);
-                               /* don't check it */
-                               odev->skb_rx_buf->ip_summed =
-                                       CHECKSUM_UNNECESSARY;
-
                                skb_reset_mac_header(odev->skb_rx_buf);
 
                                /* Ship it off to the kernel */