summaryrefslogtreecommitdiffstats
path: root/sys/netinet6/nd6_rtr.c
diff options
context:
space:
mode:
authorqingli <qingli@FreeBSD.org>2008-12-17 10:03:49 +0000
committerqingli <qingli@FreeBSD.org>2008-12-17 10:03:49 +0000
commitc6a0a000ca142a4c7062f6f2fc0c31b888309b18 (patch)
tree5820a671a6e7553fdca713d351b0eccfc6ac4ec1 /sys/netinet6/nd6_rtr.c
parent62ee68bb086f87555449fb796d5153418839b5cf (diff)
downloadFreeBSD-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/nd6_rtr.c')
-rw-r--r--sys/netinet6/nd6_rtr.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/netinet6/nd6_rtr.c b/sys/netinet6/nd6_rtr.c
index 7df364e..a47a347 100644
--- a/sys/netinet6/nd6_rtr.c
+++ b/sys/netinet6/nd6_rtr.c
@@ -1554,6 +1554,12 @@ nd6_prefix_onlink(struct nd_prefix *pr)
char ip6buf[INET6_ADDRSTRLEN];
struct sockaddr_dl null_sdl = {sizeof(null_sdl), AF_LINK};
+
+ log(LOG_DEBUG, "##1 nd6_prefix_onlink: %s, vltime = %x, pltime = %x\n",
+ ip6_sprintf(ip6buf, &pr->ndpr_prefix.sin6_addr),
+ pr->ndpr_vltime, pr->ndpr_pltime);
+
+
/* sanity check */
if ((pr->ndpr_stateflags & NDPRF_ONLINK) != 0) {
nd6log((LOG_ERR,
@@ -1622,6 +1628,12 @@ nd6_prefix_onlink(struct nd_prefix *pr)
rtflags = ifa->ifa_flags | RTF_UP;
error = rtrequest(RTM_ADD, (struct sockaddr *)&pr->ndpr_prefix,
ifa->ifa_addr, (struct sockaddr *)&mask6, rtflags, &rt);
+
+ log(LOG_DEBUG, "##2 nd6_prefix_onlink: %s, vltime = %x, pltime = %x\n",
+ ip6_sprintf(ip6buf, &pr->ndpr_prefix.sin6_addr),
+ pr->ndpr_vltime, pr->ndpr_pltime);
+
+
if (error == 0) {
if (rt != NULL) /* this should be non NULL, though */ {
rnh = V_rt_tables[rt->rt_fibnum][AF_INET6];
OpenPOWER on IntegriCloud