Commit 8f27ebb9 authored by YOSHIFUJI Hideaki's avatar YOSHIFUJI Hideaki Committed by David S. Miller

[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: default avatarYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
parent 0778769d
...@@ -2797,12 +2797,16 @@ static void addrconf_verify(unsigned long foo) ...@@ -2797,12 +2797,16 @@ static void addrconf_verify(unsigned long foo)
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;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment