aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/fib_frontend.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv4/fib_frontend.c')
-rw-r--r--net/ipv4/fib_frontend.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
index 7a31194ec633..b83203658ee3 100644
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
@@ -206,7 +206,8 @@ __be32 fib_compute_spec_dst(struct sk_buff *skb)
206 int scope; 206 int scope;
207 207
208 rt = skb_rtable(skb); 208 rt = skb_rtable(skb);
209 if (!(rt->rt_flags & (RTCF_BROADCAST | RTCF_MULTICAST))) 209 if ((rt->rt_flags & (RTCF_BROADCAST | RTCF_MULTICAST | RTCF_LOCAL)) ==
210 RTCF_LOCAL)
210 return ip_hdr(skb)->daddr; 211 return ip_hdr(skb)->daddr;
211 212
212 in_dev = __in_dev_get_rcu(dev); 213 in_dev = __in_dev_get_rcu(dev);