Merge branch 'bjorn-cleanups' into release
[pandora-kernel.git] / net / ipv4 / netfilter.c
index c99eecf..fdf6811 100644 (file)
@@ -125,6 +125,7 @@ struct ip_rt_info {
        __be32 daddr;
        __be32 saddr;
        u_int8_t tos;
+       u_int32_t mark;
 };
 
 static void nf_ip_saveroute(const struct sk_buff *skb,
@@ -138,6 +139,7 @@ static void nf_ip_saveroute(const struct sk_buff *skb,
                rt_info->tos = iph->tos;
                rt_info->daddr = iph->daddr;
                rt_info->saddr = iph->saddr;
+               rt_info->mark = skb->mark;
        }
 }
 
@@ -150,6 +152,7 @@ static int nf_ip_reroute(struct sk_buff *skb,
                const struct iphdr *iph = ip_hdr(skb);
 
                if (!(iph->tos == rt_info->tos
+                     && skb->mark == rt_info->mark
                      && iph->daddr == rt_info->daddr
                      && iph->saddr == rt_info->saddr))
                        return ip_route_me_harder(skb, RTN_UNSPEC);