LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

[PATCH] ipvs: Reject ipv6 link-local addresses for destinations

To: horms@xxxxxxxxxxxx
Subject: [PATCH] ipvs: Reject ipv6 link-local addresses for destinations
Cc: netdev@xxxxxxxxxxxxxxx, lvs-devel@xxxxxxxxxxxxxxx, kaber@xxxxxxxxx, vbusam@xxxxxxxxxx, Julius Volz <juliusv@xxxxxxxxxx>
From: Sven Wegener <sven.wegener@xxxxxxxxxxx>
Date: Fri, 5 Sep 2008 16:53:49 +0200 (CEST)
We can't use non-local link-local addresses for destinations, without
knowing the interface on which we can reach the address. Reject them for
now.

Signed-off-by: Sven Wegener <sven.wegener@xxxxxxxxxxx>
---
 net/ipv4/ipvs/ip_vs_ctl.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/net/ipv4/ipvs/ip_vs_ctl.c b/net/ipv4/ipvs/ip_vs_ctl.c
index d2dc05a..e53efe4 100644
--- a/net/ipv4/ipvs/ip_vs_ctl.c
+++ b/net/ipv4/ipvs/ip_vs_ctl.c
@@ -838,7 +838,8 @@ ip_vs_new_dest(struct ip_vs_service *svc, struct 
ip_vs_dest_user_kern *udest,
 #ifdef CONFIG_IP_VS_IPV6
        if (svc->af == AF_INET6) {
                atype = ipv6_addr_type(&udest->addr.in6);
-               if (!(atype & IPV6_ADDR_UNICAST) &&
+               if ((!(atype & IPV6_ADDR_UNICAST) ||
+                       atype & IPV6_ADDR_LINKLOCAL) &&
                        !__ip_vs_addr_is_local_v6(&udest->addr.in6))
                        return -EINVAL;
        } else
--
To unsubscribe from this list: send the line "unsubscribe lvs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

<Prev in Thread] Current Thread [Next in Thread>