diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-06-09 09:34:53 +0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-06-09 09:34:53 +0400 |
| commit | 38a4671cad3f0d277cf48445b49e42a475ebfb6a (patch) | |
| tree | 7348f3dd5f4e1bec39758dcff748a9dcbbf3430c /net/ipv4/route.c | |
| parent | d652f7022b359afd5d34fc9fffd71df118521ead (diff) | |
| parent | 317ddd256b9c24b0d78fa8018f80f1e495481a10 (diff) | |
| download | linux-38a4671cad3f0d277cf48445b49e42a475ebfb6a.tar.xz | |
Merge 3.10-rc5 into char-misc-next
Diffstat (limited to 'net/ipv4/route.c')
| -rw-r--r-- | net/ipv4/route.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 550781a17b34..d35bbf0cf404 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -737,10 +737,15 @@ static void ip_do_redirect(struct dst_entry *dst, struct sock *sk, struct sk_buf { struct rtable *rt; struct flowi4 fl4; + const struct iphdr *iph = (const struct iphdr *) skb->data; + int oif = skb->dev->ifindex; + u8 tos = RT_TOS(iph->tos); + u8 prot = iph->protocol; + u32 mark = skb->mark; rt = (struct rtable *) dst; - ip_rt_build_flow_key(&fl4, sk, skb); + __build_flow_key(&fl4, sk, iph, oif, tos, prot, mark, 0); __ip_do_redirect(rt, skb, &fl4, true); } |
