summaryrefslogtreecommitdiffstats
path: root/sys/netinet6
diff options
context:
space:
mode:
authorrrs <rrs@FreeBSD.org>2010-03-12 22:58:52 +0000
committerrrs <rrs@FreeBSD.org>2010-03-12 22:58:52 +0000
commit5db64758fcb81922e732307039ff65d0d7c6f36c (patch)
treeeeed8f9c724c05485087e8c9541f2d96864ccbd3 /sys/netinet6
parent2e508fb884590ee2b3a020fcc70b4a4e2121f056 (diff)
downloadFreeBSD-src-5db64758fcb81922e732307039ff65d0d7c6f36c.zip
FreeBSD-src-5db64758fcb81922e732307039ff65d0d7c6f36c.tar.gz
The proper fix for the delayed SCTP checksum is to
have the delayed function take an argument as to the offset to the SCTP header. This allows it to work for V4 and V6. This of course means changing all callers of the function to either pass the header len, if they have it, or create it (ip_hl << 2 or sizeof(ip6_hdr)). PR: 144529 MFC after: 2 weeks
Diffstat (limited to 'sys/netinet6')
-rw-r--r--sys/netinet6/ip6_output.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet6/ip6_output.c b/sys/netinet6/ip6_output.c
index aadb51f..a878aac 100644
--- a/sys/netinet6/ip6_output.c
+++ b/sys/netinet6/ip6_output.c
@@ -872,7 +872,7 @@ passout:
#ifdef SCTP
sw_csum = m->m_pkthdr.csum_flags & ~ifp->if_hwassist;
if (sw_csum & CSUM_SCTP) {
- sctp_delayed_cksum(m);
+ sctp_delayed_cksum(m, sizeof(struct ip6_hdr));
sw_csum &= ~CSUM_SCTP;
}
#endif
OpenPOWER on IntegriCloud