summaryrefslogtreecommitdiff
path: root/include/net/ip6_checksum.h
diff options
context:
space:
mode:
authorTom Herbert <therbert@google.com>2014-05-03 03:29:51 +0400
committerDavid S. Miller <davem@davemloft.net>2014-05-05 23:26:30 +0400
commite4f45b7f40bdaade5ef8f45e7c6daed4c909fdf5 (patch)
treebdde80c080674909cf22779940b9615053af1081 /include/net/ip6_checksum.h
parented70fcfcee953a76028bfc3f963d2167c2990020 (diff)
downloadlinux-e4f45b7f40bdaade5ef8f45e7c6daed4c909fdf5.tar.xz
net: Call skb_checksum_init in IPv6
Call skb_checksum_init instead of private functions. Signed-off-by: Tom Herbert <therbert@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/ip6_checksum.h')
-rw-r--r--include/net/ip6_checksum.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/net/ip6_checksum.h b/include/net/ip6_checksum.h
index 9e3c540c1b11..8ac5c21f8456 100644
--- a/include/net/ip6_checksum.h
+++ b/include/net/ip6_checksum.h
@@ -41,6 +41,13 @@ __sum16 csum_ipv6_magic(const struct in6_addr *saddr,
__wsum csum);
#endif
+static inline __wsum ip6_compute_pseudo(struct sk_buff *skb, int proto)
+{
+ return ~csum_unfold(csum_ipv6_magic(&ipv6_hdr(skb)->saddr,
+ &ipv6_hdr(skb)->daddr,
+ skb->len, proto, 0));
+}
+
static __inline__ __sum16 tcp_v6_check(int len,
const struct in6_addr *saddr,
const struct in6_addr *daddr,