summaryrefslogtreecommitdiff
path: root/sys/netinet6
diff options
context:
space:
mode:
authorStefan Sperling <stsp@cvs.openbsd.org>2012-09-07 09:55:19 +0000
committerStefan Sperling <stsp@cvs.openbsd.org>2012-09-07 09:55:19 +0000
commit482a9128240c2865fb69cb5a69b2f45e65c4688f (patch)
tree415d49ca417faf3a7b1b395cde2655e522ca8236 /sys/netinet6
parent81bb170b737ed3c0588fe796eb263cc154023c1f (diff)
Create IPv6 privacy addresses even if static IPv6 addresses are present.
Restores the ability to use privacy addresses for outgoing connections and static addresses for incoming connections, which was broken by r1.62. ok sperreault@
Diffstat (limited to 'sys/netinet6')
-rw-r--r--sys/netinet6/nd6_rtr.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netinet6/nd6_rtr.c b/sys/netinet6/nd6_rtr.c
index 9b84a6f7ade..d8ce6e06ed5 100644
--- a/sys/netinet6/nd6_rtr.c
+++ b/sys/netinet6/nd6_rtr.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: nd6_rtr.c,v 1.63 2012/09/04 10:03:16 stsp Exp $ */
+/* $OpenBSD: nd6_rtr.c,v 1.64 2012/09/07 09:55:18 stsp Exp $ */
/* $KAME: nd6_rtr.c,v 1.97 2001/02/07 11:09:13 itojun Exp $ */
/*
@@ -1275,7 +1275,8 @@ prelist_update(struct nd_prefix *new, struct nd_defrouter *dr, struct mbuf *m)
}
if ((!autoconf || ((ifp->if_xflags & IFXF_INET6_NOPRIVACY) == 0 &&
- !tempaddr_preferred)) && new->ndpr_vltime != 0 && !statique) {
+ !tempaddr_preferred)) && new->ndpr_vltime != 0 &&
+ !((ifp->if_xflags & IFXF_INET6_NOPRIVACY) && statique)) {
/*
* There is no SLAAC address and/or there is no preferred RFC
* 4941 temporary address. And the valid prefix lifetime is