summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2015-06-25 09:29:20 +0200
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2015-06-25 09:29:20 +0200
commit0c7e18edb07ed205e7087b73a85fa692f45003ab (patch)
tree4455fd109bcdd539e47234e74ce158b0269f213d
parenteb9af8fe6d4776242fea84f5228b46d903539146 (diff)
Add element count to all set types header
It is better to list the set elements for all set types, thus the header information is uniform. Element counts are therefore added to the bitmap and list types.
-rw-r--r--include/libipset/utils.h3
-rw-r--r--kernel/include/linux/netfilter/ipset/ip_set.h2
-rw-r--r--kernel/include/linux/netfilter/ipset/ip_set_bitmap.h2
-rw-r--r--kernel/net/netfilter/ipset/ip_set_bitmap_gen.h10
-rw-r--r--kernel/net/netfilter/ipset/ip_set_hash_gen.h21
-rw-r--r--kernel/net/netfilter/ipset/ip_set_list_set.c6
-rw-r--r--lib/errcode.c3
-rw-r--r--lib/session.c4
-rw-r--r--src/ipset.85
-rw-r--r--tests/bitmap:ip.t.list03
-rw-r--r--tests/bitmap:ip.t.list13
-rw-r--r--tests/bitmap:ip.t.list23
-rw-r--r--tests/bitmap:ip.t.list33
-rw-r--r--tests/bitmap:ip.t.list43
-rw-r--r--tests/bitmap:ip.t.list53
-rw-r--r--tests/bitmap:ip.t.list63
-rw-r--r--tests/comment.t.list01
-rw-r--r--tests/comment.t.list11
-rw-r--r--tests/comment.t.list113
-rw-r--r--tests/comment.t.list123
-rw-r--r--tests/ipmap.t.list03
-rw-r--r--tests/ipmap.t.list13
-rw-r--r--tests/ipmap.t.list23
-rw-r--r--tests/ipmap.t.list33
-rw-r--r--tests/ipmap.t.list43
-rw-r--r--tests/macipmap.t.list03
-rw-r--r--tests/macipmap.t.list13
-rw-r--r--tests/macipmap.t.list23
-rw-r--r--tests/macipmap.t.list33
-rw-r--r--tests/portmap.t.list03
-rw-r--r--tests/portmap.t.list13
-rw-r--r--tests/portmap.t.list29
-rw-r--r--tests/portmap.t.list33
-rw-r--r--tests/setlist.t.list03
-rw-r--r--tests/setlist.t.list13
-rw-r--r--tests/setlist.t.list23
-rw-r--r--tests/setlist.t.list33
37 files changed, 94 insertions, 48 deletions
diff --git a/include/libipset/utils.h b/include/libipset/utils.h
index ceedd45..3cd29da 100644
--- a/include/libipset/utils.h
+++ b/include/libipset/utils.h
@@ -19,9 +19,6 @@
#define STRCASEQ(a, b) (strcasecmp(a, b) == 0)
#define STRNCASEQ(a, b, n) (strncasecmp(a, b, n) == 0)
-/* Match set type names */
-#define MATCH_TYPENAME(a, b) STRNEQ(a, b, strlen(b))
-
/* Stringify tokens */
#define _STR(c) #c
#define STR(c) _STR(c)
diff --git a/kernel/include/linux/netfilter/ipset/ip_set.h b/kernel/include/linux/netfilter/ipset/ip_set.h
index f54389b..0ed3ac5 100644
--- a/kernel/include/linux/netfilter/ipset/ip_set.h
+++ b/kernel/include/linux/netfilter/ipset/ip_set.h
@@ -247,6 +247,8 @@ struct ip_set {
u8 flags;
/* Default timeout value, if enabled */
u32 timeout;
+ /* Number of elements (vs timeout) */
+ u32 elements;
/* Element data size */
size_t dsize;
/* Offsets to extensions in elements */
diff --git a/kernel/include/linux/netfilter/ipset/ip_set_bitmap.h b/kernel/include/linux/netfilter/ipset/ip_set_bitmap.h
index 5e4662a..366d6c0 100644
--- a/kernel/include/linux/netfilter/ipset/ip_set_bitmap.h
+++ b/kernel/include/linux/netfilter/ipset/ip_set_bitmap.h
@@ -6,8 +6,8 @@
#define IPSET_BITMAP_MAX_RANGE 0x0000FFFF
enum {
+ IPSET_ADD_STORE_PLAIN_TIMEOUT = -1,
IPSET_ADD_FAILED = 1,
- IPSET_ADD_STORE_PLAIN_TIMEOUT,
IPSET_ADD_START_STORED_TIMEOUT,
};
diff --git a/kernel/net/netfilter/ipset/ip_set_bitmap_gen.h b/kernel/net/netfilter/ipset/ip_set_bitmap_gen.h
index b984bcf..efe87cf 100644
--- a/kernel/net/netfilter/ipset/ip_set_bitmap_gen.h
+++ b/kernel/net/netfilter/ipset/ip_set_bitmap_gen.h
@@ -86,6 +86,7 @@ mtype_flush(struct ip_set *set)
if (set->extensions & IPSET_EXT_DESTROY)
mtype_ext_cleanup(set);
memset(map->members, 0, map->memsize);
+ set->elements = 0;
}
/* Calculate the actual memory size of the set data */
@@ -111,7 +112,8 @@ mtype_head(struct ip_set *set, struct sk_buff *skb)
goto nla_put_failure;
if (mtype_do_head(skb, map) ||
nla_put_net32(skb, IPSET_ATTR_REFERENCES, htonl(set->ref - 1)) ||
- nla_put_net32(skb, IPSET_ATTR_MEMSIZE, htonl(memsize)))
+ nla_put_net32(skb, IPSET_ATTR_MEMSIZE, htonl(memsize)) ||
+ nla_put_net32(skb, IPSET_ATTR_ELEMENTS, htonl(set->elements)))
goto nla_put_failure;
if (unlikely(ip_set_put_flags(skb, set)))
goto nla_put_failure;
@@ -155,6 +157,7 @@ mtype_add(struct ip_set *set, void *value, const struct ip_set_ext *ext,
if (ret == IPSET_ADD_FAILED) {
if (SET_WITH_TIMEOUT(set) &&
ip_set_timeout_expired(ext_timeout(x, set))) {
+ set->elements--;
ret = 0;
} else if (!(flags & IPSET_FLAG_EXIST)) {
set_bit(e->id, map->members);
@@ -163,6 +166,8 @@ mtype_add(struct ip_set *set, void *value, const struct ip_set_ext *ext,
/* Element is re-added, cleanup extensions */
ip_set_ext_destroy(set, x);
}
+ if (ret > 0)
+ set->elements--;
if (SET_WITH_TIMEOUT(set))
#ifdef IP_SET_BITMAP_STORED_TIMEOUT
@@ -180,6 +185,7 @@ mtype_add(struct ip_set *set, void *value, const struct ip_set_ext *ext,
/* Activate element */
set_bit(e->id, map->members);
+ set->elements++;
return 0;
}
@@ -196,6 +202,7 @@ mtype_del(struct ip_set *set, void *value, const struct ip_set_ext *ext,
return -IPSET_ERR_EXIST;
ip_set_ext_destroy(set, x);
+ set->elements--;
if (SET_WITH_TIMEOUT(set) &&
ip_set_timeout_expired(ext_timeout(x, set)))
return -IPSET_ERR_EXIST;
@@ -291,6 +298,7 @@ mtype_gc(unsigned long ul_set)
if (ip_set_timeout_expired(ext_timeout(x, set))) {
clear_bit(id, map->members);
ip_set_ext_destroy(set, x);
+ set->elements--;
}
}
spin_unlock_bh(&set->lock);
diff --git a/kernel/net/netfilter/ipset/ip_set_hash_gen.h b/kernel/net/netfilter/ipset/ip_set_hash_gen.h
index 2b59b20..191707d 100644
--- a/kernel/net/netfilter/ipset/ip_set_hash_gen.h
+++ b/kernel/net/netfilter/ipset/ip_set_hash_gen.h
@@ -272,7 +272,6 @@ htable_bits(u32 hashsize)
struct htype {
struct htable __rcu *table; /* the hash table */
u32 maxelem; /* max elements in the hash */
- u32 elements; /* current element (vs timeout) */
u32 initval; /* random jhash init value */
#ifdef IP_SET_HASH_WITH_MARKMASK
u32 markmask; /* markmask value for mark mask to store */
@@ -397,7 +396,7 @@ mtype_flush(struct ip_set *set)
#ifdef IP_SET_HASH_WITH_NETS
memset(h->nets, 0, sizeof(struct net_prefixes) * NLEN(set->family));
#endif
- h->elements = 0;
+ set->elements = 0;
}
/* Destroy the hashtable part of the set */
@@ -503,7 +502,7 @@ mtype_expire(struct ip_set *set, struct htype *h, u8 nets_length, size_t dsize)
nets_length, k);
#endif
ip_set_ext_destroy(set, data);
- h->elements--;
+ set->elements--;
d++;
}
}
@@ -707,11 +706,11 @@ mtype_add(struct ip_set *set, void *value, const struct ip_set_ext *ext,
bool deleted = false, forceadd = false, reuse = false;
u32 key, multi = 0;
- if (h->elements >= h->maxelem) {
+ if (set->elements >= h->maxelem) {
if (SET_WITH_TIMEOUT(set))
/* FIXME: when set is full, we slow down here */
mtype_expire(set, h, NLEN(set->family), set->dsize);
- if (h->elements >= h->maxelem && SET_WITH_FORCEADD(set))
+ if (set->elements >= h->maxelem && SET_WITH_FORCEADD(set))
forceadd = true;
}
@@ -724,7 +723,7 @@ mtype_add(struct ip_set *set, void *value, const struct ip_set_ext *ext,
pr_warn("Set %s is full, maxelem %u reached\n",
set->name, h->maxelem);
return -IPSET_ERR_HASH_FULL;
- } else if (h->elements >= h->maxelem) {
+ } else if (set->elements >= h->maxelem) {
goto set_full;
}
old = NULL;
@@ -773,11 +772,11 @@ mtype_add(struct ip_set *set, void *value, const struct ip_set_ext *ext,
NLEN(set->family), i);
#endif
ip_set_ext_destroy(set, data);
- h->elements--;
+ set->elements--;
}
goto copy_data;
}
- if (h->elements >= h->maxelem)
+ if (set->elements >= h->maxelem)
goto set_full;
/* Create a new slot */
if (n->pos >= n->size) {
@@ -802,7 +801,7 @@ copy_elem:
j = n->pos++;
data = ahash_data(n, j, set->dsize);
copy_data:
- h->elements++;
+ set->elements++;
#ifdef IP_SET_HASH_WITH_NETS
for (i = 0; i < IPSET_NET_COUNT; i++)
mtype_add_cidr(h, NCIDR_PUT(DCIDR_GET(d->cidr, i)),
@@ -875,7 +874,7 @@ mtype_del(struct ip_set *set, void *value, const struct ip_set_ext *ext,
smp_mb__after_atomic();
if (i + 1 == n->pos)
n->pos--;
- h->elements--;
+ set->elements--;
#ifdef IP_SET_HASH_WITH_NETS
for (j = 0; j < IPSET_NET_COUNT; j++)
mtype_del_cidr(h, NCIDR_PUT(DCIDR_GET(d->cidr, j)),
@@ -1076,7 +1075,7 @@ mtype_head(struct ip_set *set, struct sk_buff *skb)
#endif
if (nla_put_net32(skb, IPSET_ATTR_REFERENCES, htonl(set->ref - 1)) ||
nla_put_net32(skb, IPSET_ATTR_MEMSIZE, htonl(memsize)) ||
- nla_put_net32(skb, IPSET_ATTR_ELEMENTS, htonl(h->elements)))
+ nla_put_net32(skb, IPSET_ATTR_ELEMENTS, htonl(set->elements)))
goto nla_put_failure;
if (unlikely(ip_set_put_flags(skb, set)))
goto nla_put_failure;
diff --git a/kernel/net/netfilter/ipset/ip_set_list_set.c b/kernel/net/netfilter/ipset/ip_set_list_set.c
index db55d58..db0198d 100644
--- a/kernel/net/netfilter/ipset/ip_set_list_set.c
+++ b/kernel/net/netfilter/ipset/ip_set_list_set.c
@@ -166,6 +166,7 @@ __list_set_del(struct ip_set *set, struct set_elem *e)
static inline void
list_set_del(struct ip_set *set, struct set_elem *e)
{
+ set->elements--;
list_del_rcu(&e->list);
__list_set_del(set, e);
}
@@ -311,6 +312,7 @@ list_set_uadd(struct ip_set *set, void *value, const struct ip_set_ext *ext,
list_add_rcu(&e->list, &prev->list);
else
list_add_tail_rcu(&e->list, &map->members);
+ set->elements++;
return 0;
}
@@ -421,6 +423,7 @@ list_set_flush(struct ip_set *set)
list_for_each_entry_safe(e, n, &map->members, list)
list_set_del(set, e);
+ set->elements = 0;
}
static void
@@ -470,7 +473,8 @@ list_set_head(struct ip_set *set, struct sk_buff *skb)
goto nla_put_failure;
if (nla_put_net32(skb, IPSET_ATTR_SIZE, htonl(map->size)) ||
nla_put_net32(skb, IPSET_ATTR_REFERENCES, htonl(set->ref - 1)) ||
- nla_put_net32(skb, IPSET_ATTR_MEMSIZE, htonl(memsize)))
+ nla_put_net32(skb, IPSET_ATTR_MEMSIZE, htonl(memsize)) ||
+ nla_put_net32(skb, IPSET_ATTR_ELEMENTS, htonl(set->elements)))
goto nla_put_failure;
if (unlikely(ip_set_put_flags(skb, set)))
goto nla_put_failure;
diff --git a/lib/errcode.c b/lib/errcode.c
index 3881121..60220c7 100644
--- a/lib/errcode.c
+++ b/lib/errcode.c
@@ -148,6 +148,9 @@ static const struct ipset_errcode_table list_errcode_table[] = {
{ },
};
+/* Match set type names */
+#define MATCH_TYPENAME(a, b) STRNEQ(a, b, strlen(b))
+
/**
* ipset_errcode - interpret a kernel error code
* @session: session structure
diff --git a/lib/session.c b/lib/session.c
index 2650755..95c253e 100644
--- a/lib/session.c
+++ b/lib/session.c
@@ -931,7 +931,7 @@ list_create(struct ipset_session *session, struct nlattr *nla[])
safe_dprintf(session, ipset_print_number, IPSET_OPT_MEMSIZE);
safe_snprintf(session, "\nReferences: ");
safe_dprintf(session, ipset_print_number, IPSET_OPT_REFERENCES);
- if (MATCH_TYPENAME(type->name , "hash:")) {
+ if (ipset_data_test(data, IPSET_OPT_ELEMENTS)) {
safe_snprintf(session, "\nNumber of entries: ");
safe_dprintf(session, ipset_print_number, IPSET_OPT_ELEMENTS);
}
@@ -945,7 +945,7 @@ list_create(struct ipset_session *session, struct nlattr *nla[])
safe_snprintf(session, "</memsize>\n<references>");
safe_dprintf(session, ipset_print_number, IPSET_OPT_REFERENCES);
safe_snprintf(session, "</references>\n");
- if (MATCH_TYPENAME(type->name , "hash:")) {
+ if (ipset_data_test(data, IPSET_OPT_ELEMENTS)) {
safe_snprintf(session, "<numentries>");
safe_dprintf(session, ipset_print_number, IPSET_OPT_ELEMENTS);
safe_snprintf(session, "</numentries>\n");
diff --git a/src/ipset.8 b/src/ipset.8
index 7c8f56e..b97ea41 100644
--- a/src/ipset.8
+++ b/src/ipset.8
@@ -279,6 +279,11 @@ ipset add test 192.168.0.1 timeout 60
.IP
ipset \-exist add test 192.168.0.1 timeout 600
.PP
+When listing the set, the number of entries printed in the header might be
+larger than the listed number of entries for sets with the timeout extensions:
+the number of entries in the set is updated when elements added/deleted to the
+set and periodically when the garbage colletor evicts the timed out entries.
+.PP
.SS "counters, packets, bytes"
All set types support the optional \fBcounters\fR
option when creating a set. If the option is specified then the set is created
diff --git a/tests/bitmap:ip.t.list0 b/tests/bitmap:ip.t.list0
index c316603..ad9a693 100644
--- a/tests/bitmap:ip.t.list0
+++ b/tests/bitmap:ip.t.list0
@@ -1,7 +1,8 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0 timeout 5
-Size in memory: 524408
+Size in memory: 532640
References: 0
+Number of entries: 1
Members:
2.1.0.0 timeout 0
diff --git a/tests/bitmap:ip.t.list1 b/tests/bitmap:ip.t.list1
index 3c94983..a9504f6 100644
--- a/tests/bitmap:ip.t.list1
+++ b/tests/bitmap:ip.t.list1
@@ -1,7 +1,8 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.0-2.0.255.255 timeout 5
-Size in memory: 524408
+Size in memory: 532640
References: 0
+Number of entries: 1
Members:
2.0.0.0 timeout 0
diff --git a/tests/bitmap:ip.t.list2 b/tests/bitmap:ip.t.list2
index 78bce6c..ddf8100 100644
--- a/tests/bitmap:ip.t.list2
+++ b/tests/bitmap:ip.t.list2
@@ -1,7 +1,8 @@
Name: test
Type: bitmap:ip
Header: range 10.0.0.0-10.255.255.255 netmask 24 timeout 5
-Size in memory: 524408
+Size in memory: 532640
References: 0
+Number of entries: 1
Members:
10.255.255.0 timeout 0
diff --git a/tests/bitmap:ip.t.list3 b/tests/bitmap:ip.t.list3
index 3f4e064..e1a4d43 100644
--- a/tests/bitmap:ip.t.list3
+++ b/tests/bitmap:ip.t.list3
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 0.0.0.0-255.255.255.255 netmask 16 timeout 5
-Size in memory: 524408
+Size in memory: 532640
References: 0
+Number of entries: 2
Members:
0.0.0.0 timeout 0
255.255.0.0 timeout 0
diff --git a/tests/bitmap:ip.t.list4 b/tests/bitmap:ip.t.list4
index e706b67..7148a8d 100644
--- a/tests/bitmap:ip.t.list4
+++ b/tests/bitmap:ip.t.list4
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0 timeout x
-Size in memory: 524408
+Size in memory: 532640
References: 0
+Number of entries: 6
Members:
2.0.0.1 timeout x
2.0.0.128 timeout x
diff --git a/tests/bitmap:ip.t.list5 b/tests/bitmap:ip.t.list5
index 2d91635..1d22665 100644
--- a/tests/bitmap:ip.t.list5
+++ b/tests/bitmap:ip.t.list5
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.0-2.0.255.255 timeout x
-Size in memory: 524408
+Size in memory: 532640
References: 0
+Number of entries: 2
Members:
2.0.0.0 timeout x
2.0.255.255 timeout x
diff --git a/tests/bitmap:ip.t.list6 b/tests/bitmap:ip.t.list6
index 68b1b07..c3eb347 100644
--- a/tests/bitmap:ip.t.list6
+++ b/tests/bitmap:ip.t.list6
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 10.0.0.0-10.255.255.255 netmask 24 timeout x
-Size in memory: 524408
+Size in memory: 532640
References: 0
+Number of entries: 258
Members:
10.0.0.0 timeout x
10.8.0.0 timeout x
diff --git a/tests/comment.t.list0 b/tests/comment.t.list0
index 86bcacd..6d44c91 100644
--- a/tests/comment.t.list0
+++ b/tests/comment.t.list0
@@ -3,5 +3,6 @@ Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0 comment
Size in memory: 532640
References: 0
+Number of entries: 1
Members:
2.0.0.1 comment "text message"
diff --git a/tests/comment.t.list1 b/tests/comment.t.list1
index 607b65a..1a09672 100644
--- a/tests/comment.t.list1
+++ b/tests/comment.t.list1
@@ -3,6 +3,7 @@ Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0 comment
Size in memory: 532640
References: 0
+Number of entries: 255
Members:
2.0.0.1 comment "text message 1"
2.0.0.2 comment "text message 2"
diff --git a/tests/comment.t.list11 b/tests/comment.t.list11
index 19168a8..7d6990f 100644
--- a/tests/comment.t.list11
+++ b/tests/comment.t.list11
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0 timeout x comment
-Size in memory: 1581216
+Size in memory: 1056928
References: 0
+Number of entries: 510
Members:
2.0.0.1 timeout x comment "text message 1"
2.0.0.2 timeout x comment "text message 2"
diff --git a/tests/comment.t.list12 b/tests/comment.t.list12
index 54b0a3a..9440b75 100644
--- a/tests/comment.t.list12
+++ b/tests/comment.t.list12
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0 timeout x comment
-Size in memory: 1581216
+Size in memory: 1056928
References: 0
+Number of entries: 510
Members:
2.0.1.1 timeout x comment "text message 1"
2.0.1.2 timeout x comment "text message 2"
diff --git a/tests/ipmap.t.list0 b/tests/ipmap.t.list0
index c1c4360..d3b99a8 100644
--- a/tests/ipmap.t.list0
+++ b/tests/ipmap.t.list0
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0
-Size in memory: 8232
+Size in memory: 8352
References: 0
+Number of entries: 6
Members:
2.0.0.1
2.0.0.128
diff --git a/tests/ipmap.t.list1 b/tests/ipmap.t.list1
index abfc98d..f9b311d 100644
--- a/tests/ipmap.t.list1
+++ b/tests/ipmap.t.list1
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.1-2.1.0.0
-Size in memory: 8232
+Size in memory: 8352
References: 0
+Number of entries: 2
Members:
2.0.0.1
2.1.0.0
diff --git a/tests/ipmap.t.list2 b/tests/ipmap.t.list2
index 932cad2..c2c5691 100644
--- a/tests/ipmap.t.list2
+++ b/tests/ipmap.t.list2
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 2.0.0.0-2.0.255.255
-Size in memory: 8232
+Size in memory: 8352
References: 0
+Number of entries: 2
Members:
2.0.0.0
2.0.255.255
diff --git a/tests/ipmap.t.list3 b/tests/ipmap.t.list3
index ab391d0..3586211 100644
--- a/tests/ipmap.t.list3
+++ b/tests/ipmap.t.list3
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 10.0.0.0-10.255.255.255 netmask 24
-Size in memory: 8232
+Size in memory: 8352
References: 0
+Number of entries: 258
Members:
10.0.0.0
10.8.0.0
diff --git a/tests/ipmap.t.list4 b/tests/ipmap.t.list4
index eaff220..2042ee6 100644
--- a/tests/ipmap.t.list4
+++ b/tests/ipmap.t.list4
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip
Header: range 0.0.0.0-255.255.255.255 netmask 16
-Size in memory: 8232
+Size in memory: 8352
References: 0
+Number of entries: 2
Members:
0.0.0.0
255.255.0.0
diff --git a/tests/macipmap.t.list0 b/tests/macipmap.t.list0
index d37e560..4268a2c 100644
--- a/tests/macipmap.t.list0
+++ b/tests/macipmap.t.list0
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip,mac
Header: range 2.0.0.1-2.1.0.0
-Size in memory: 458864
+Size in memory: 532632
References: 0
+Number of entries: 3
Members:
2.0.0.1,00:11:22:33:44:56
2.0.0.2,00:11:22:33:44:55
diff --git a/tests/macipmap.t.list1 b/tests/macipmap.t.list1
index 0447c41..a568148 100644
--- a/tests/macipmap.t.list1
+++ b/tests/macipmap.t.list1
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip,mac
Header: range 2.0.0.0-2.0.255.255
-Size in memory: 458864
+Size in memory: 532632
References: 0
+Number of entries: 3
Members:
2.0.0.0
2.0.0.2,00:11:22:33:44:55
diff --git a/tests/macipmap.t.list2 b/tests/macipmap.t.list2
index 0c8bf6f..f6a78c7 100644
--- a/tests/macipmap.t.list2
+++ b/tests/macipmap.t.list2
@@ -1,7 +1,8 @@
Name: test
Type: bitmap:ip,mac
Header: range 2.0.0.1-2.1.0.0 timeout x
-Size in memory: 1048688
+Size in memory: 1056920
References: 0
+Number of entries: 1
Members:
2.1.0.0 timeout x
diff --git a/tests/macipmap.t.list3 b/tests/macipmap.t.list3
index bf78821..78c78d3 100644
--- a/tests/macipmap.t.list3
+++ b/tests/macipmap.t.list3
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:ip,mac
Header: range 2.0.0.1-2.1.0.0 timeout x
-Size in memory: 1048688
+Size in memory: 1056920
References: 0
+Number of entries: 3
Members:
2.0.0.1,00:11:22:33:44:56 timeout x
2.0.0.2,00:11:22:33:44:55 timeout x
diff --git a/tests/portmap.t.list0 b/tests/portmap.t.list0
index 4ff6b1f..7f8657e 100644
--- a/tests/portmap.t.list0
+++ b/tests/portmap.t.list0
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:port
Header: range 1-1024
-Size in memory: 152
+Size in memory: 276
References: 0
+Number of entries: 2
Members:
1
1024
diff --git a/tests/portmap.t.list1 b/tests/portmap.t.list1
index a34caba..55ba0d0 100644
--- a/tests/portmap.t.list1
+++ b/tests/portmap.t.list1
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:port
Header: range 0-65535
-Size in memory: 8216
+Size in memory: 8340
References: 0
+Number of entries: 2
Members:
0
65535
diff --git a/tests/portmap.t.list2 b/tests/portmap.t.list2
index 6afaf02..d5756e6 100644
--- a/tests/portmap.t.list2
+++ b/tests/portmap.t.list2
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:port
-Header: range 0-65535 timeout 8
-Elements: 1
-Size in memory: 524288
+Header: range 0-65535 timeout x
+Size in memory: 532628
References: 0
+Number of entries: 2
Members:
-65535 timeout 0
+0 timeout x
+65535 timeout x
diff --git a/tests/portmap.t.list3 b/tests/portmap.t.list3
index 441da01..d5756e6 100644
--- a/tests/portmap.t.list3
+++ b/tests/portmap.t.list3
@@ -1,8 +1,9 @@
Name: test
Type: bitmap:port
Header: range 0-65535 timeout x
-Size in memory: 524400
+Size in memory: 532628
References: 0
+Number of entries: 2
Members:
0 timeout x
65535 timeout x
diff --git a/tests/setlist.t.list0 b/tests/setlist.t.list0
index c413c26..2925a73 100644
--- a/tests/setlist.t.list0
+++ b/tests/setlist.t.list0
@@ -1,8 +1,9 @@
Name: test
Type: list:set
Header: size 8
-Size in memory: 112
+Size in memory: 224
References: 0
+Number of entries: 2
Members:
foo
bar
diff --git a/tests/setlist.t.list1 b/tests/setlist.t.list1
index 47ba175..5446c14 100644
--- a/tests/setlist.t.list1
+++ b/tests/setlist.t.list1
@@ -1,8 +1,9 @@
Name: test
Type: list:set
Header: size 8
-Size in memory: 120
+Size in memory: 264
References: 0
+Number of entries: 3
Members:
a
b
diff --git a/tests/setlist.t.list2 b/tests/setlist.t.list2
index d1bb378..70fb52b 100644
--- a/tests/setlist.t.list2
+++ b/tests/setlist.t.list2
@@ -1,8 +1,9 @@
Name: test
Type: list:set
Header: size 8
-Size in memory: 120
+Size in memory: 224
References: 0
+Number of entries: 2
Members:
a
c
diff --git a/tests/setlist.t.list3 b/tests/setlist.t.list3
index 0a9e0b4..6be4b37 100644
--- a/tests/setlist.t.list3
+++ b/tests/setlist.t.list3
@@ -1,7 +1,8 @@
Name: test
Type: list:set
Header: size 8
-Size in memory: 120
+Size in memory: 184
References: 0
+Number of entries: 1
Members:
a