diff options
author | suz <suz@FreeBSD.org> | 2005-10-19 01:21:49 +0000 |
---|---|---|
committer | suz <suz@FreeBSD.org> | 2005-10-19 01:21:49 +0000 |
commit | 897c7e4265d14c9c55722506200bf27058d7b876 (patch) | |
tree | f0828396f224f8690565fea78957685c435993fc /sys/netinet6 | |
parent | 0c736a6f9b97bb25ca62a2acba74284d4d44d1c7 (diff) | |
download | FreeBSD-src-897c7e4265d14c9c55722506200bf27058d7b876.zip FreeBSD-src-897c7e4265d14c9c55722506200bf27058d7b876.tar.gz |
Raw IPv6 checksum must use the protocol number of the last header, instead of the first next-header value.
Obtained from: KAME
MFC after: 1 day
Diffstat (limited to 'sys/netinet6')
-rw-r--r-- | sys/netinet6/raw_ip6.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet6/raw_ip6.c b/sys/netinet6/raw_ip6.c index e07ca80..59bb4a5 100644 --- a/sys/netinet6/raw_ip6.c +++ b/sys/netinet6/raw_ip6.c @@ -167,7 +167,7 @@ docontinue: goto docontinue; if (in6p->in6p_cksum != -1) { rip6stat.rip6s_isum++; - if (in6_cksum(m, ip6->ip6_nxt, *offp, + if (in6_cksum(m, proto, *offp, m->m_pkthdr.len - *offp)) { rip6stat.rip6s_badsum++; goto docontinue; |