diff options
author | qingli <qingli@FreeBSD.org> | 2008-12-17 10:03:49 +0000 |
---|---|---|
committer | qingli <qingli@FreeBSD.org> | 2008-12-17 10:03:49 +0000 |
commit | c6a0a000ca142a4c7062f6f2fc0c31b888309b18 (patch) | |
tree | 5820a671a6e7553fdca713d351b0eccfc6ac4ec1 /sys/netinet6/in6.c | |
parent | 62ee68bb086f87555449fb796d5153418839b5cf (diff) | |
download | FreeBSD-src-c6a0a000ca142a4c7062f6f2fc0c31b888309b18.zip FreeBSD-src-c6a0a000ca142a4c7062f6f2fc0c31b888309b18.tar.gz |
in6_clsroute() was applied to prefix routes causing some
of them to expire. in6_clsroute() was only applied to
cloned routes that are no longer applicable after the
arp-v2 commit.
Diffstat (limited to 'sys/netinet6/in6.c')
-rw-r--r-- | sys/netinet6/in6.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index 6ba852c..f266d45 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -987,6 +987,13 @@ in6_update_ifa(struct ifnet *ifp, struct in6_aliasreq *ifra, } } if (!rt) { + + printf("in6_update_ifa #1: addr= %s, mask= %s, ia= %s, ifp = %s\n", + ip6_sprintf(ip6buf, &mltaddr.sin6_addr), + ip6_sprintf(ip6buf, &mltmask.sin6_addr), + ip6_sprintf(ip6buf, &ia->ia_addr.sin6_addr), + if_name(ifp)); + error = rtrequest(RTM_ADD, (struct sockaddr *)&mltaddr, (struct sockaddr *)&ia->ia_addr, (struct sockaddr *)&mltmask, RTF_UP, @@ -1061,6 +1068,12 @@ in6_update_ifa(struct ifnet *ifp, struct in6_aliasreq *ifra, } } if (!rt) { + printf("in6_update_ifa #2: addr= %s, mask= %s, ia= %s, ifp = %s\n", + ip6_sprintf(ip6buf, &mltaddr.sin6_addr), + ip6_sprintf(ip6buf, &mltmask.sin6_addr), + ip6_sprintf(ip6buf, &ia->ia_addr.sin6_addr), + if_name(ifp)); + error = rtrequest(RTM_ADD, (struct sockaddr *)&mltaddr, (struct sockaddr *)&ia->ia_addr, (struct sockaddr *)&mltmask, RTF_UP, |