diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 6260963775d54df1a3b5385f2263aaa4eaae3d2c..81ccad22a9043549acc37556b0461977bd1b4b3b 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -2081,6 +2081,9 @@ int ip_route_use_hint(struct sk_buff *skb, __be32 daddr, __be32 saddr, int err = -EINVAL; u32 tag = 0; + if (!in_dev) + return -EINVAL; + if (ipv4_is_multicast(saddr) || ipv4_is_lbcast(saddr)) goto martian_source;