aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/ipv6/ip6_gre.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/net/ipv6/ip6_gre.c b/net/ipv6/ip6_gre.c
index 75277b739b04..3873181ed856 100644
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
@@ -468,17 +468,7 @@ static int ip6gre_rcv(struct sk_buff *skb)
468 goto drop; 468 goto drop;
469 469
470 if (flags&GRE_CSUM) { 470 if (flags&GRE_CSUM) {
471 switch (skb->ip_summed) { 471 csum = skb_checksum_simple_validate(skb);
472 case CHECKSUM_COMPLETE:
473 csum = csum_fold(skb->csum);
474 if (!csum)
475 break;
476 /* fall through */
477 case CHECKSUM_NONE:
478 skb->csum = 0;
479 csum = __skb_checksum_complete(skb);
480 skb->ip_summed = CHECKSUM_COMPLETE;
481 }
482 offset += 4; 472 offset += 4;
483 } 473 }
484 if (flags&GRE_KEY) { 474 if (flags&GRE_KEY) {