]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
netfilter: nf_queue: get rid of dependency on IP6_NF_IPTABLES
authorLiping Zhang <liping.zhang@spreadtrum.com>
Sun, 11 Sep 2016 14:05:27 +0000 (22:05 +0800)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 12 Sep 2016 17:54:46 +0000 (19:54 +0200)
hash_v6 is used by both nftables and ip6tables, so depend on
IP6_NF_IPTABLES is not properly.

Actually, it only parses ipv6hdr and computes a hash value, so
even if IPV6 is disabled, there's no side effect too, remove it.

Signed-off-by: Liping Zhang <liping.zhang@spreadtrum.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/net/netfilter/nf_queue.h

index 0dbce55437f2c57cc1642d865a91ffc4169c9866..cc8a11f7e3060b70f6fde9a12e0eae3c6527c97f 100644 (file)
@@ -54,7 +54,6 @@ static inline u32 hash_v4(const struct sk_buff *skb, u32 jhash_initval)
                        (__force u32)iph->saddr, iph->protocol, jhash_initval);
 }
 
-#if IS_ENABLED(CONFIG_IP6_NF_IPTABLES)
 static inline u32 hash_v6(const struct sk_buff *skb, u32 jhash_initval)
 {
        const struct ipv6hdr *ip6h = ipv6_hdr(skb);
@@ -77,7 +76,6 @@ static inline u32 hash_v6(const struct sk_buff *skb, u32 jhash_initval)
 
        return jhash_3words(a, b, c, jhash_initval);
 }
-#endif
 
 static inline u32
 nfqueue_hash(const struct sk_buff *skb, u16 queue, u16 queues_total, u8 family,
@@ -85,10 +83,8 @@ nfqueue_hash(const struct sk_buff *skb, u16 queue, u16 queues_total, u8 family,
 {
        if (family == NFPROTO_IPV4)
                queue += ((u64) hash_v4(skb, jhash_initval) * queues_total) >> 32;
-#if IS_ENABLED(CONFIG_IP6_NF_IPTABLES)
        else if (family == NFPROTO_IPV6)
                queue += ((u64) hash_v6(skb, jhash_initval) * queues_total) >> 32;
-#endif
 
        return queue;
 }