net: ipv6: only invalidate previously tokenized addresses
authorDaniel Borkmann <dborkman@redhat.com>
Tue, 9 Apr 2013 03:47:16 +0000 (03:47 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 9 Apr 2013 17:12:23 +0000 (13:12 -0400)
commit617fe29d45bdfffba2739e6512c83e766e6ae72c
tree8eb3d331f1c042893a990af3ee48e2aab4061fef
parentfc403832f7bd94014fe3d965e0652a857160f1c9
net: ipv6: only invalidate previously tokenized addresses

Instead of invalidating all IPv6 addresses with global scope
when one decides to use IPv6 tokens, we should only invalidate
previous tokens and leave the rest intact until they expire
eventually (or are intact forever). For doing this less greedy
approach, we're adding a bool at the end of inet6_ifaddr structure
instead, for two reasons: i) per-inet6_ifaddr flag space is
already used up, making it wider might not be a good idea,
since ii) also we do not necessarily need to export this
information into user space.

Suggested-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/if_inet6.h
net/ipv6/addrconf.c