aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorNicolas Dichtel <nicolas.dichtel@6wind.com>2013-08-20 12:16:06 +0200
committerDavid S. Miller <davem@davemloft.net>2013-08-20 23:45:42 -0700
commite837735ec406a347756e0ef3aea124a6d51ea1ba (patch)
tree258f140ccfda951a6e91b3db041abcaec3c395e4 /drivers
parentRevert "ipv6: fix checkpatch errors in net/ipv6/addrconf.c" (diff)
downloadlinux-dev-e837735ec406a347756e0ef3aea124a6d51ea1ba.tar.xz
linux-dev-e837735ec406a347756e0ef3aea124a6d51ea1ba.zip
ip6_tunnel: ensure to always have a link local address
When an Xin6 tunnel is set up, we check other netdevices to inherit the link- local address. If none is available, the interface will not have any link-local address. RFC4862 expects that each interface has a link local address. Now than this kind of tunnels supports x-netns, it's easy to fall in this case (by creating the tunnel in a netns where ethernet interfaces stand and then moving it to a other netns where no ethernet interface is available). RFC4291, Appendix A suggests two methods: the first is the one currently implemented, the second is to generate a unique identifier, so that we can always generate the link-local address. Let's use eth_random_addr() to generate this interface indentifier. I remove completly the previous method, hence for the whole life of the interface, the link-local address remains the same (previously, it depends on which ethernet interfaces were up when the tunnel interface was set up). Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions