Re: [PATCH linux-2.6 v2] IPv6: Temp addresses are immediatelydeleted.

From: David Miller
Date: Wed Sep 29 2010 - 02:30:17 EST


From: Glenn Wurster <gwurster@xxxxxxxxxxxxxxx>
Date: Mon, 27 Sep 2010 13:10:10 -0400

> There is a bug in the interaction between ipv6_create_tempaddr and
> addrconf_verify. Because ipv6_create_tempaddr uses the cstamp and tstamp
> from the public address in creating a private address, if we have not
> received a router advertisement in a while, tstamp + temp_valid_lft might be
> < now. If this happens, the new address is created inside
> ipv6_create_tempaddr, then the loop within addrconf_verify starts again and
> the address is immediately deleted. We are left with no temporary addresses
> on the interface, and no more will be created until the public IP address is
> updated. To avoid this, set the expiry time to be the minimum of the time
> left on the public address or the config option PLUS the current age of the
> public interface.
>
> Version 2, now with 100% fewer line wraps. Thanks to David Miller for
> pointing out the line wrapping issue.
>
> Signed-off-by: Glenn Wurster <gwurster@xxxxxxxxxxxxxxx>

This can only happen if we apply your other patch, which I showed
was incorrect as per RFCs.

We only create temporary address when public addresses are created,
and this is the point where we are handling a router advertisement
with non-zero Valid Lifetime.

Therefore I'm not applying this patch either.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/