netfilter: ipset: Improve preprocessor macros checks

Check if mandatory MTYPE, HTYPE and HOST_MASK macros
defined.

Signed-off-by: Sergey Popovich <popovich_sergei@mail.ua>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
Sergey Popovich 2015-05-02 19:28:19 +02:00 committed by Pablo Neira Ayuso
parent 58cc06daea
commit 1823fb79e5
3 changed files with 18 additions and 7 deletions

View file

@ -253,6 +253,14 @@ hbucket_elem_add(struct hbucket *n, u8 ahash_max, size_t dsize)
#define mtype_variant IPSET_TOKEN(MTYPE, _variant) #define mtype_variant IPSET_TOKEN(MTYPE, _variant)
#define mtype_data_match IPSET_TOKEN(MTYPE, _data_match) #define mtype_data_match IPSET_TOKEN(MTYPE, _data_match)
#ifndef MTYPE
#error "MTYPE is not defined!"
#endif
#ifndef HOST_MASK
#error "HOST_MASK is not defined!"
#endif
#ifndef HKEY_DATALEN #ifndef HKEY_DATALEN
#define HKEY_DATALEN sizeof(struct mtype_elem) #define HKEY_DATALEN sizeof(struct mtype_elem)
#endif #endif
@ -262,6 +270,9 @@ hbucket_elem_add(struct hbucket *n, u8 ahash_max, size_t dsize)
& jhash_mask(htable_bits)) & jhash_mask(htable_bits))
#ifndef htype #ifndef htype
#ifndef HTYPE
#error "HTYPE is not defined!"
#endif /* HTYPE */
#define htype HTYPE #define htype HTYPE
/* The generic hash structure */ /* The generic hash structure */
@ -288,7 +299,7 @@ struct htype {
struct net_prefixes nets[0]; /* book-keeping of prefixes */ struct net_prefixes nets[0]; /* book-keeping of prefixes */
#endif #endif
}; };
#endif #endif /* htype */
#ifdef IP_SET_HASH_WITH_NETS #ifdef IP_SET_HASH_WITH_NETS
/* Network cidr size book keeping when the hash stores different /* Network cidr size book keeping when the hash stores different

View file

@ -76,8 +76,8 @@ hash_ipmark4_data_next(struct hash_ipmark4_elem *next,
next->ip = d->ip; next->ip = d->ip;
} }
#define MTYPE hash_ipmark4 #define MTYPE hash_ipmark4
#define HOST_MASK 32 #define HOST_MASK 32
#include "ip_set_hash_gen.h" #include "ip_set_hash_gen.h"
static int static int
@ -209,7 +209,7 @@ hash_ipmark6_data_next(struct hash_ipmark4_elem *next,
#define MTYPE hash_ipmark6 #define MTYPE hash_ipmark6
#define HOST_MASK 128 #define HOST_MASK 128
#define IP_SET_EMIT_CREATE #define IP_SET_EMIT_CREATE
#include "ip_set_hash_gen.h" #include "ip_set_hash_gen.h"

View file

@ -83,8 +83,8 @@ hash_ipport4_data_next(struct hash_ipport4_elem *next,
next->port = d->port; next->port = d->port;
} }
#define MTYPE hash_ipport4 #define MTYPE hash_ipport4
#define HOST_MASK 32 #define HOST_MASK 32
#include "ip_set_hash_gen.h" #include "ip_set_hash_gen.h"
static int static int
@ -247,7 +247,7 @@ hash_ipport6_data_next(struct hash_ipport4_elem *next,
#define MTYPE hash_ipport6 #define MTYPE hash_ipport6
#define HOST_MASK 128 #define HOST_MASK 128
#define IP_SET_EMIT_CREATE #define IP_SET_EMIT_CREATE
#include "ip_set_hash_gen.h" #include "ip_set_hash_gen.h"
static int static int