summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHerbert Xu2006-04-06 07:31:19 +0200
committerDavid S. Miller2006-04-10 07:25:29 +0200
commit45af08be6d120690d379cb8421ebaf9d9f86ba52 (patch)
tree5d0105eab9b524e0fa35b3caf9e6c1444e640010
parent[BLUETOOTH] sco: Possible double free. (diff)
downloadkernel-qcow2-linux-45af08be6d120690d379cb8421ebaf9d9f86ba52.tar.gz
kernel-qcow2-linux-45af08be6d120690d379cb8421ebaf9d9f86ba52.tar.xz
kernel-qcow2-linux-45af08be6d120690d379cb8421ebaf9d9f86ba52.zip
[INET]: Use port unreachable instead of proto for tunnels
This patch changes GRE and SIT to generate port unreachable instead of protocol unreachable errors when we can't find a matching tunnel for a packet. This removes the ambiguity as to whether the error is caused by no tunnel being found or by the lack of support for the given tunnel type. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/ipv4/ip_gre.c2
-rw-r--r--net/ipv6/sit.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
index 9981dcd68f11..ab99bebdcdc8 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -656,7 +656,7 @@ static int ipgre_rcv(struct sk_buff *skb)
read_unlock(&ipgre_lock);
return(0);
}
- icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PROT_UNREACH, 0);
+ icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0);
drop:
read_unlock(&ipgre_lock);
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c
index c2d3e17beae6..6578c3080f47 100644
--- a/net/ipv6/sit.c
+++ b/net/ipv6/sit.c
@@ -397,7 +397,7 @@ static int ipip6_rcv(struct sk_buff *skb)
return 0;
}
- icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PROT_UNREACH, 0);
+ icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0);
kfree_skb(skb);
read_unlock(&ipip6_lock);
out: