diff options
author | Tom Herbert <therbert@google.com> | 2014-05-07 19:51:57 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-05-08 23:47:50 -0400 |
commit | 81249bea1fb003b6fcbc1709dd5a5fc1e26e168d (patch) | |
tree | b5cd760bc9e977432fc037ab4c1144550827f8fb | |
parent | b1036c6a470ccf5f18490a7ce4c99422d3bf77c4 (diff) |
gre6: Call skb_checksum_simple_validate
Use skb_checksum_simple_validate to verify checksum.
Signed-off-by: Tom Herbert <therbert@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/ipv6/ip6_gre.c | 12 |
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) { |