summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorTom Herbert <tom@herbertland.com>2015-04-20 21:10:05 (GMT)
committerDavid S. Miller <davem@davemloft.net>2015-04-21 01:57:26 (GMT)
commit3dfb05340ec6676e6fc71a9ae87bbbe66d3c2998 (patch)
tree7b3ff2ea9fad06843c9334dff0adbff2fd0a5d59 /drivers/net
parent4e18b9adf2f910ec4d30b811a74a5b626e6c6125 (diff)
downloadlinux-3dfb05340ec6676e6fc71a9ae87bbbe66d3c2998.tar.xz
ppp: call skb_checksum_complete_unset in ppp_receive_frame
Call checksum_complete_unset in PPP receive to discard checksum-complete value. PPP does not pull checksum for headers and also modifies packet as in VJ compression. Signed-off-by: Tom Herbert <tom@herbertland.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/ppp/ppp_generic.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ppp/ppp_generic.c b/drivers/net/ppp/ppp_generic.c
index af034db..9d15566 100644
--- a/drivers/net/ppp/ppp_generic.c
+++ b/drivers/net/ppp/ppp_generic.c
@@ -1716,6 +1716,7 @@ ppp_receive_frame(struct ppp *ppp, struct sk_buff *skb, struct channel *pch)
{
/* note: a 0-length skb is used as an error indication */
if (skb->len > 0) {
+ skb_checksum_complete_unset(skb);
#ifdef CONFIG_PPP_MULTILINK
/* XXX do channel-level decompression here */
if (PPP_PROTO(skb) == PPP_MP)