[PATCH 3/6] IPv6: Allow link-local tunnel endpoints

2006-11-02 Thread Ville Nuorvala
From de1ad3df949303a1454ae0cdee0a599c0fc95e45 Mon Sep 17 00:00:00 2001
From: Ville Nuorvala [EMAIL PROTECTED]
Date: Thu, 2 Nov 2006 12:45:08 +0200
Subject: [PATCH 3/6] IPv6: Allow link-local tunnel endpoints

Allow link-local tunnel endpoints if the underlying link is defined.

Signed-off-by: Ville Nuorvala [EMAIL PROTECTED]
---
 net/ipv6/ip6_tunnel.c |8 ++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c
index 2467b04..008bd11 100644
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
@@ -460,6 +460,7 @@ ip6ip6_err(struct sk_buff *skb, struct i
if (rel_msg   pskb_may_pull(skb, offset + sizeof (*ipv6h))) {
struct rt6_info *rt;
struct sk_buff *skb2 = skb_clone(skb, GFP_ATOMIC);
+
if (!skb2)
goto out;
 
@@ -823,7 +824,7 @@ static void ip6_tnl_set_cap(struct ip6_t
if (ltype  (IPV6_ADDR_UNICAST|IPV6_ADDR_MULTICAST) 
rtype  (IPV6_ADDR_UNICAST|IPV6_ADDR_MULTICAST) 
!((ltype|rtype)  IPV6_ADDR_LOOPBACK) 
-   !((ltype|rtype)  IPV6_ADDR_LINKLOCAL)) {
+   (!((ltype|rtype)  IPV6_ADDR_LINKLOCAL) || p-link)) {
if (ltypeIPV6_ADDR_UNICAST)
p-flags |= IP6_TNL_F_CAP_XMIT;
if (rtypeIPV6_ADDR_UNICAST)
@@ -861,8 +862,11 @@ static void ip6ip6_tnl_link_config(struc
dev-iflink = p-link;
 
if (p-flags  IP6_TNL_F_CAP_XMIT) {
+   int strict = (ipv6_addr_type(p-raddr) 
+ (IPV6_ADDR_MULTICAST|IPV6_ADDR_LINKLOCAL));
+
struct rt6_info *rt = rt6_lookup(p-raddr, p-laddr,
-p-link, 0);
+p-link, strict);
 
if (rt == NULL)
return;
-- 
1.4.3.2



Re: [PATCH 3/6] IPv6: Allow link-local tunnel endpoints

2006-11-02 Thread YOSHIFUJI Hideaki / 吉藤英明
In article [EMAIL PROTECTED] (at Thu, 02 Nov 2006 13:33:48 +0200), Ville 
Nuorvala [EMAIL PROTECTED] says:

 From de1ad3df949303a1454ae0cdee0a599c0fc95e45 Mon Sep 17 00:00:00 2001
 From: Ville Nuorvala [EMAIL PROTECTED]
 Date: Thu, 2 Nov 2006 12:45:08 +0200
 Subject: [PATCH 3/6] IPv6: Allow link-local tunnel endpoints
 
 Allow link-local tunnel endpoints if the underlying link is defined.
 
 Signed-off-by: Ville Nuorvala [EMAIL PROTECTED]

Acked-by: YOSHIFUJI Hideaki [EMAIL PROTECTED]

--yoshfuji
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html