Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 341892
b: refs/heads/master
c: 8caaf7b
h: refs/heads/master
v: v3
  • Loading branch information
Nicolas Dichtel authored and David S. Miller committed Dec 7, 2012
1 parent a10f862 commit 2703c9b
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: e3d8fabee3b66ce158b2603f270479b84b6e4ba7
refs/heads/master: 8caaf7b608ae27f7e7d5f5df6f87039db556d4bb
23 changes: 21 additions & 2 deletions trunk/net/ipv4/route.c
Original file line number Diff line number Diff line change
Expand Up @@ -2232,8 +2232,27 @@ static int rt_fill_info(struct net *net, __be32 dst, __be32 src,
error = rt->dst.error;

if (rt_is_input_route(rt)) {
if (nla_put_u32(skb, RTA_IIF, rt->rt_iif))
goto nla_put_failure;
#ifdef CONFIG_IP_MROUTE
if (ipv4_is_multicast(dst) && !ipv4_is_local_multicast(dst) &&
IPV4_DEVCONF_ALL(net, MC_FORWARDING)) {
int err = ipmr_get_route(net, skb,
fl4->saddr, fl4->daddr,
r, nowait);
if (err <= 0) {
if (!nowait) {
if (err == 0)
return 0;
goto nla_put_failure;
} else {
if (err == -EMSGSIZE)
goto nla_put_failure;
error = err;
}
}
} else
#endif
if (nla_put_u32(skb, RTA_IIF, rt->rt_iif))
goto nla_put_failure;
}

if (rtnl_put_cacheinfo(skb, &rt->dst, 0, expires, error) < 0)
Expand Down

0 comments on commit 2703c9b

Please sign in to comment.