summaryrefslogtreecommitdiffstats
path: root/sys/netinet6/in6.h
diff options
context:
space:
mode:
authortuexen <tuexen@FreeBSD.org>2014-10-06 17:08:19 +0000
committertuexen <tuexen@FreeBSD.org>2014-10-06 17:08:19 +0000
commit01f551f619a0190f2a22242a9b28a20e72e95685 (patch)
tree1a7cb000c510b03bf8075a05e3a0a3d0ab5db11a /sys/netinet6/in6.h
parent88124f9e02fc7803f94dbf3ded02e455d255c479 (diff)
downloadFreeBSD-src-01f551f619a0190f2a22242a9b28a20e72e95685.zip
FreeBSD-src-01f551f619a0190f2a22242a9b28a20e72e95685.tar.gz
MFC r272404:
Fix the checksum computation for UDPLite/IPv6. This requires the usage of a function computing the checksum only over a part of the function. Therefore introduce in6_cksum_partial() and implement in6_cksum() based on that. While there, ensure that the UDPLite packet contains at least enough bytes to contain the header.
Diffstat (limited to 'sys/netinet6/in6.h')
-rw-r--r--sys/netinet6/in6.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/netinet6/in6.h b/sys/netinet6/in6.h
index f7d7e76..639194a 100644
--- a/sys/netinet6/in6.h
+++ b/sys/netinet6/in6.h
@@ -641,6 +641,8 @@ struct ip6_hdr;
int in6_cksum_pseudo(struct ip6_hdr *, uint32_t, uint8_t, uint16_t);
int in6_cksum(struct mbuf *, u_int8_t, u_int32_t, u_int32_t);
+int in6_cksum_partial(struct mbuf *, u_int8_t, u_int32_t, u_int32_t,
+ u_int32_t);
int in6_localaddr(struct in6_addr *);
int in6_localip(struct in6_addr *);
int in6_addrscope(struct in6_addr *);
OpenPOWER on IntegriCloud