netfilter: ipset: Allocate the proper size of memory when /0 networks are supported
authorJozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Sun, 30 Nov 2014 18:56:56 +0000 (19:56 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Wed, 3 Dec 2014 11:43:36 +0000 (12:43 +0100)
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/ipset/ip_set_hash_gen.h

index 8ef9135..974ff38 100644 (file)
@@ -1101,8 +1101,7 @@ IPSET_TOKEN(HTYPE, _create)(struct net *net, struct ip_set *set,
 
        hsize = sizeof(*h);
 #ifdef IP_SET_HASH_WITH_NETS
-       hsize += sizeof(struct net_prefixes) *
-               (set->family == NFPROTO_IPV4 ? 32 : 128);
+       hsize += sizeof(struct net_prefixes) * NLEN(set->family);
 #endif
        h = kzalloc(hsize, GFP_KERNEL);
        if (!h)