netfilter: ip6table_mangle: Fix set-but-unused variables.
authorDavid S. Miller <davem@davemloft.net>
Mon, 18 Apr 2011 00:06:15 +0000 (17:06 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 18 Apr 2011 00:06:15 +0000 (17:06 -0700)
The variable 'flowlabel' is set but unused in ip6t_mangle_out().

The intention here was to compare this key to the header value after
mangling, and trigger a route lookup on mismatch.

Make it so.

Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/netfilter/ip6table_mangle.c

index 679a0a3..00d1917 100644 (file)
@@ -64,7 +64,8 @@ ip6t_mangle_out(struct sk_buff *skb, const struct net_device *out)
            (memcmp(&ipv6_hdr(skb)->saddr, &saddr, sizeof(saddr)) ||
             memcmp(&ipv6_hdr(skb)->daddr, &daddr, sizeof(daddr)) ||
             skb->mark != mark ||
-            ipv6_hdr(skb)->hop_limit != hop_limit))
+            ipv6_hdr(skb)->hop_limit != hop_limit ||
+            flowlabel != *((u_int32_t *)ipv6_hdr(skb))))
                return ip6_route_me_harder(skb) == 0 ? ret : NF_DROP;
 
        return ret;