netfilter: make comparision helpers stub functions in ZONES=n case
authorFlorian Westphal <fw@strlen.de>
Fri, 10 Jun 2016 21:09:01 +0000 (23:09 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Thu, 23 Jun 2016 11:32:02 +0000 (13:32 +0200)
Those comparisions are useless in case of ZONES=n; all conntracks
will reside in the same zone by definition.

Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/net/netfilter/nf_conntrack_zones.h

index 4e32512cef32a67f49d44dfed9ef2e23f15d47f8..bd4692690914c43106d895403d9d0be7e317a8b2 100644 (file)
@@ -68,22 +68,34 @@ static inline bool nf_ct_zone_matches_dir(const struct nf_conntrack_zone *zone,
 static inline u16 nf_ct_zone_id(const struct nf_conntrack_zone *zone,
                                enum ip_conntrack_dir dir)
 {
+#ifdef CONFIG_NF_CONNTRACK_ZONES
        return nf_ct_zone_matches_dir(zone, dir) ?
               zone->id : NF_CT_DEFAULT_ZONE_ID;
+#else
+       return NF_CT_DEFAULT_ZONE_ID;
+#endif
 }
 
 static inline bool nf_ct_zone_equal(const struct nf_conn *a,
                                    const struct nf_conntrack_zone *b,
                                    enum ip_conntrack_dir dir)
 {
+#ifdef CONFIG_NF_CONNTRACK_ZONES
        return nf_ct_zone_id(nf_ct_zone(a), dir) ==
               nf_ct_zone_id(b, dir);
+#else
+       return true;
+#endif
 }
 
 static inline bool nf_ct_zone_equal_any(const struct nf_conn *a,
                                        const struct nf_conntrack_zone *b)
 {
+#ifdef CONFIG_NF_CONNTRACK_ZONES
        return nf_ct_zone(a)->id == b->id;
+#else
+       return true;
+#endif
 }
 #endif /* IS_ENABLED(CONFIG_NF_CONNTRACK) */
 #endif /* _NF_CONNTRACK_ZONES_H */