Message ID | 1414660193-4177-1-git-send-email-nicolas.cavallari@green-communications.fr |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
From: Nicolas Cavallari <nicolas.cavallari@green-communications.fr> Date: Thu, 30 Oct 2014 10:09:53 +0100 > If we cache them, the kernel will reuse them, independently of > whether forwarding is enabled or not. Which means that if forwarding is > disabled on the input interface where the first routing request comes > from, then that unreachable result will be cached and reused for > other interfaces, even if forwarding is enabled on them. The opposite > is also true. > > This can be verified with two interfaces A and B and an output interface > C, where B has forwarding enabled, but not A and trying > ip route get $dst iif A from $src && ip route get $dst iif B from $src > > Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr> > Reviewed-by: Julian Anastasov <ja@ssi.bg> Applied and queued up for -stable, thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 2d4ae46..6a2155b 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1798,6 +1798,7 @@ local_input: no_route: RT_CACHE_STAT_INC(in_no_route); res.type = RTN_UNREACHABLE; + res.fi = NULL; goto local_input; /*