diff options
author | Tom Herbert <therbert@google.com> | 2014-05-07 16:52:21 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-05-08 23:47:50 -0400 |
commit | 29a96e1f36dbd6fc7911a6d517625c656ba4809f (patch) | |
tree | 1a77a68f57237ce937162d77c84c64451647b78c | |
parent | de08dc1a8e7052f4cbaf920ce0af6bb261595705 (diff) |
icmp: 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/ipv4/icmp.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c index 0134663fdbc..fe52666dc43 100644 --- a/net/ipv4/icmp.c +++ b/net/ipv4/icmp.c @@ -908,16 +908,8 @@ int icmp_rcv(struct sk_buff *skb) ICMP_INC_STATS_BH(net, ICMP_MIB_INMSGS); - switch (skb->ip_summed) { - case CHECKSUM_COMPLETE: - if (!csum_fold(skb->csum)) - break; - /* fall through */ - case CHECKSUM_NONE: - skb->csum = 0; - if (__skb_checksum_complete(skb)) - goto csum_error; - } + if (skb_checksum_simple_validate(skb)) + goto csum_error; if (!pskb_pull(skb, sizeof(*icmph))) goto error; |