diff options
author | itojun <itojun@FreeBSD.org> | 2000-09-03 13:43:13 +0000 |
---|---|---|
committer | itojun <itojun@FreeBSD.org> | 2000-09-03 13:43:13 +0000 |
commit | f729518373a69a6b7ad1a54c1bd21cd6aaec7035 (patch) | |
tree | b7de3bb1f6e9ebc31cc2926d580367a79fe9c455 /sys/netinet6 | |
parent | 9ec6d409a0641ddf61030e46efe018b37a08d4fa (diff) | |
download | FreeBSD-src-f729518373a69a6b7ad1a54c1bd21cd6aaec7035.zip FreeBSD-src-f729518373a69a6b7ad1a54c1bd21cd6aaec7035.tar.gz |
repair type 0 routing header support. it was caused by RFC2292/2292bis
difference. from: jinmei@kame.net
Diffstat (limited to 'sys/netinet6')
-rw-r--r-- | sys/netinet6/route6.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet6/route6.c b/sys/netinet6/route6.c index cbba9db..3cd95a1 100644 --- a/sys/netinet6/route6.c +++ b/sys/netinet6/route6.c @@ -157,7 +157,8 @@ ip6_rthdr0(m, ip6, rh0) index = addrs - rh0->ip6r0_segleft; rh0->ip6r0_segleft--; - nextaddr = ((struct in6_addr *)(rh0 + 1)) + index; + /* note that ip6r0_addr does not exist in RFC2292bis */ + nextaddr = rh0->ip6r0_addr + index; /* * reject invalid addresses. be proactive about malicious use of |