diff options
author | David S. Miller <davem@davemloft.net> | 2012-07-23 13:22:20 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-07-23 13:22:20 -0700 |
commit | fe3edf45792a7d2f0edff4e2fcdd9a84c1a388a0 (patch) | |
tree | db004ea2ef6cdda3c48888365c88cc098fa85782 /net/ipv4 | |
parent | 838942a594017817d33b2d914152305054e255af (diff) |
ipv4: Remove all RTCF_DIRECTSRC handliing.
The last and final kernel user, ICMP address replies,
has been removed.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4')
-rw-r--r-- | net/ipv4/route.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 9add08869c75..34017be87c85 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1391,9 +1391,6 @@ static int __mkroute_input(struct sk_buff *skb, goto cleanup; } - if (err) - flags |= RTCF_DIRECTSRC; - if (out_dev == in_dev && err && (IN_DEV_SHARED_MEDIA(out_dev) || inet_addr_onlink(out_dev, saddr, FIB_RES_GW(*res)))) @@ -1416,7 +1413,7 @@ static int __mkroute_input(struct sk_buff *skb, do_cache = false; if (res->fi) { - if (!(flags & RTCF_DIRECTSRC) && !itag) { + if (!itag) { rth = FIB_RES_NH(*res).nh_rth_input; if (rt_cache_valid(rth)) { dst_hold(&rth->dst); @@ -1558,8 +1555,6 @@ static int ip_route_input_slow(struct sk_buff *skb, __be32 daddr, __be32 saddr, dev, in_dev, &itag); if (err < 0) goto martian_source_keep_err; - if (err) - flags |= RTCF_DIRECTSRC; goto local_input; } @@ -1580,8 +1575,6 @@ brd_input: in_dev, &itag); if (err < 0) goto martian_source_keep_err; - if (err) - flags |= RTCF_DIRECTSRC; } flags |= RTCF_BROADCAST; res.type = RTN_BROADCAST; @@ -1590,7 +1583,7 @@ brd_input: local_input: do_cache = false; if (res.fi) { - if (!(flags & RTCF_DIRECTSRC) && !itag) { + if (!itag) { rth = FIB_RES_NH(res).nh_rth_input; if (rt_cache_valid(rth)) { dst_hold(&rth->dst); |