From: Mitsuru Chinen Date: Fri, 7 Dec 2007 09:07:24 +0000 (-0800) Subject: [IPv4]: Reply net unreachable ICMP message X-Git-Tag: v2.6.24-rc5~52^2~5 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7f53878dc2618bf7c01e2135bd271ac01bd85dc9;p=linux-2.6 [IPv4]: Reply net unreachable ICMP message IPv4 stack doesn't reply any ICMP destination unreachable message with net unreachable code when IP detagrams are being discarded because of no route could be found in the forwarding path. Incidentally, IPv6 stack replies such ICMPv6 message in the similar situation. Signed-off-by: Mitsuru Chinen Signed-off-by: David S. Miller --- diff --git a/net/ipv4/route.c b/net/ipv4/route.c index c426dec6d5..79c4b9360a 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1252,6 +1252,7 @@ static int ip_error(struct sk_buff *skb) break; case ENETUNREACH: code = ICMP_NET_UNREACH; + IP_INC_STATS_BH(IPSTATS_MIB_INNOROUTES); break; case EACCES: code = ICMP_PKT_FILTERED; @@ -1881,6 +1882,8 @@ no_route: RT_CACHE_STAT_INC(in_no_route); spec_dst = inet_select_addr(dev, 0, RT_SCOPE_UNIVERSE); res.type = RTN_UNREACHABLE; + if (err == -ESRCH) + err = -ENETUNREACH; goto local_input; /*