Commit 58cc06da authored by Sergey Popovich's avatar Sergey Popovich Committed by Pablo Neira Ayuso

netfilter: ipset: Fix hashing for ipv6 sets

HKEY_DATALEN remains defined after first inclusion
of ip_set_hash_gen.h, so it is incorrectly reused
for IPv6 code.

Undefine HKEY_DATALEN in ip_set_hash_gen.h at the end.

Also remove some useless defines of HKEY_DATALEN in
ip_set_hash_{ip{,mark,port},netiface}.c as ip_set_hash_gen.h
defines it correctly for such set types anyway.
Signed-off-by: default avatarSergey Popovich <popovich_sergei@mail.ua>
Signed-off-by: default avatarJozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
parent 275e2bc0
......@@ -1166,3 +1166,5 @@ IPSET_TOKEN(HTYPE, _create)(struct net *net, struct ip_set *set,
return 0;
}
#endif /* IP_SET_EMIT_CREATE */
#undef HKEY_DATALEN
......@@ -211,7 +211,6 @@ hash_ip6_data_next(struct hash_ip4_elem *next, const struct hash_ip6_elem *e)
#undef MTYPE
#undef HOST_MASK
#undef HKEY_DATALEN
#define MTYPE hash_ip6
#define HOST_MASK 128
......
......@@ -78,7 +78,6 @@ hash_ipmark4_data_next(struct hash_ipmark4_elem *next,
#define MTYPE hash_ipmark4
#define HOST_MASK 32
#define HKEY_DATALEN sizeof(struct hash_ipmark4_elem)
#include "ip_set_hash_gen.h"
static int
......@@ -207,11 +206,9 @@ hash_ipmark6_data_next(struct hash_ipmark4_elem *next,
#undef MTYPE
#undef HOST_MASK
#undef HKEY_DATALEN
#define MTYPE hash_ipmark6
#define HOST_MASK 128
#define HKEY_DATALEN sizeof(struct hash_ipmark6_elem)
#define IP_SET_EMIT_CREATE
#include "ip_set_hash_gen.h"
......
......@@ -85,7 +85,6 @@ hash_ipport4_data_next(struct hash_ipport4_elem *next,
#define MTYPE hash_ipport4
#define HOST_MASK 32
#define HKEY_DATALEN sizeof(struct hash_ipport4_elem)
#include "ip_set_hash_gen.h"
static int
......@@ -245,11 +244,9 @@ hash_ipport6_data_next(struct hash_ipport4_elem *next,
#undef MTYPE
#undef HOST_MASK
#undef HKEY_DATALEN
#define MTYPE hash_ipport6
#define HOST_MASK 128
#define HKEY_DATALEN sizeof(struct hash_ipport6_elem)
#define IP_SET_EMIT_CREATE
#include "ip_set_hash_gen.h"
......
......@@ -460,7 +460,6 @@ hash_netiface6_data_next(struct hash_netiface4_elem *next,
#undef MTYPE
#undef HOST_MASK
#undef HKEY_DATALEN
#define MTYPE hash_netiface6
#define HOST_MASK 128
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment