Patchwork [4/5] addrconf: refuse isatap eui64 for INADDR_ANY

login
register
mail settings
Submitter Sascha Hlusiak
Date May 19, 2009, 9:03 p.m.
Message ID <1242767023-9501-4-git-send-email-contact@saschahlusiak.de>
Download mbox | patch
Permalink /patch/27423/
State Superseded
Delegated to: David Miller
Headers show

Comments

Sascha Hlusiak - May 19, 2009, 9:03 p.m.
A tunnel with no local ipv4 endpoint would otherwise use the
ISATAP linklocal address fe80::5efe:0:0, which is invalid. Rather not
add a linklocal address at all.

Signed-off-by: Sascha Hlusiak <contact@saschahlusiak.de>
---
 net/ipv6/addrconf.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

Patch

diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index a8218bc..550fb79 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -1520,6 +1520,8 @@  static int addrconf_ifid_infiniband(u8 *eui, struct net_device *dev)
 
 int __ipv6_isatap_ifid(u8 *eui, __be32 addr)
 {
+	if (addr == 0)
+		return -1;
 	eui[0] = (ipv4_is_zeronet(addr) || ipv4_is_private_10(addr) ||
 		  ipv4_is_loopback(addr) || ipv4_is_linklocal_169(addr) ||
 		  ipv4_is_private_172(addr) || ipv4_is_test_192(addr) ||