[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:
parent
0778769d39
commit
8f27ebb982
|
@ -2797,12 +2797,16 @@ restart:
|
||||||
ifp->idev->nd_parms->retrans_time / HZ;
|
ifp->idev->nd_parms->retrans_time / HZ;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (age >= ifp->valid_lft) {
|
if (ifp->valid_lft != INFINITY_LIFE_TIME &&
|
||||||
|
age >= ifp->valid_lft) {
|
||||||
spin_unlock(&ifp->lock);
|
spin_unlock(&ifp->lock);
|
||||||
in6_ifa_hold(ifp);
|
in6_ifa_hold(ifp);
|
||||||
read_unlock(&addrconf_hash_lock);
|
read_unlock(&addrconf_hash_lock);
|
||||||
ipv6_del_addr(ifp);
|
ipv6_del_addr(ifp);
|
||||||
goto restart;
|
goto restart;
|
||||||
|
} else if (ifp->prefered_lft == INFINITY_LIFE_TIME) {
|
||||||
|
spin_unlock(&ifp->lock);
|
||||||
|
continue;
|
||||||
} else if (age >= ifp->prefered_lft) {
|
} else if (age >= ifp->prefered_lft) {
|
||||||
/* jiffies - ifp->tsamp > age >= ifp->prefered_lft */
|
/* jiffies - ifp->tsamp > age >= ifp->prefered_lft */
|
||||||
int deprecate = 0;
|
int deprecate = 0;
|
||||||
|
|
Loading…
Reference in New Issue