From: mpi Date: Thu, 25 Aug 2016 16:12:16 +0000 (+0000) Subject: Remove a check to expire received prefix. X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=e6fa9c2da22dc4e870ead775faddcdfa6eb18541;p=openbsd Remove a check to expire received prefix. This check does not make sense since November 2000 when IPv6 autoconf address deletion has been made independent from prefix lifetimes. Fix a case when a route was added to the table but the corresponding address was not, leaving v6 unusable. Found the hardway by and ok sthen@ --- diff --git a/sys/netinet6/nd6_rtr.c b/sys/netinet6/nd6_rtr.c index 6fdac5a708f..e03fa0199b6 100644 --- a/sys/netinet6/nd6_rtr.c +++ b/sys/netinet6/nd6_rtr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: nd6_rtr.c,v 1.141 2016/08/22 10:33:22 mpi Exp $ */ +/* $OpenBSD: nd6_rtr.c,v 1.142 2016/08/25 16:12:16 mpi Exp $ */ /* $KAME: nd6_rtr.c,v 1.97 2001/02/07 11:09:13 itojun Exp $ */ /* @@ -1249,19 +1249,6 @@ prelist_update(struct nd_prefix *new, struct nd_defrouter *dr, struct mbuf *m) goto end; /* we should just give up in this case. */ } - /* - * XXX: from the ND point of view, we can ignore a prefix - * with the on-link bit being zero. However, we need a - * prefix structure for references from autoconfigured - * addresses. Thus, we explicitly make sure that the prefix - * itself expires now. - */ - if (newpr->ndpr_raf_onlink == 0) { - newpr->ndpr_vltime = 0; - newpr->ndpr_pltime = 0; - in6_init_prefix_ltimes(newpr); - } - pr = newpr; }