[IPV6] ADDRCONF: Do not verify an address with infinity lifetime

We also do not try regenarating new temporary address corresponding to an
address with infinite preferred lifetime.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
This commit is contained in:
YOSHIFUJI Hideaki 2006-07-28 18:12:11 +09:00 committed by David S. Miller
parent 0778769d39
commit 8f27ebb982

View File

@ -2797,12 +2797,16 @@ restart:
ifp->idev->nd_parms->retrans_time / HZ;
#endif
if (age >= ifp->valid_lft) {
if (ifp->valid_lft != INFINITY_LIFE_TIME &&
age >= ifp->valid_lft) {
spin_unlock(&ifp->lock);
in6_ifa_hold(ifp);
read_unlock(&addrconf_hash_lock);
ipv6_del_addr(ifp);
goto restart;
} else if (ifp->prefered_lft == INFINITY_LIFE_TIME) {
spin_unlock(&ifp->lock);
continue;
} else if (age >= ifp->prefered_lft) {
/* jiffies - ifp->tsamp > age >= ifp->prefered_lft */
int deprecate = 0;