# Hash comment: Destroy test set
0 ipset destroy test
# Hash comment: create set with timeout
-0 ipset create test hash:ip comment timeout 5
+0 ipset create test hash:ip comment timeout 4
# Hash comment: Add multiple elements with default timeout
0 for x in `seq 0 255`; do echo "add test 2.0.0.$x comment \\\"text message $x\\\""; done | ipset restore
# Hash comment: Add multiple elements with zero timeout
0 ipset list test | grep -v Revision: | sed 's/timeout ./timeout x/' > .foo0 && ./sort.sh .foo0
# Hash comment: Check listing
0 diff -u -I 'Size in memory.*' .foo comment.t.list21
-# Sleep 6s so that entries can time out
-0 sleep 6s
+# Sleep 5s so that entries can time out
+0 sleep 5s
# Hash comment: List set
0 ipset list test | grep -v Revision: | sed 's/timeout ./timeout x/' > .foo0 && ./sort.sh .foo0
# Hash comment: Check listing
Name: test
Type: hash:ip
Header: family inet hashsize 1024 maxelem 65536 timeout x comment
-Size in memory: 98256
+Size in memory: 57634
References: 0
-Number of entries: 512
+Number of entries: 256
Members:
2.0.1.0 timeout x comment "text message 0"
2.0.1.1 timeout x comment "text message 1"
# Create a set with timeout
-0 ipset create test hash:ip,mark timeout 5
+0 ipset create test hash:ip,mark timeout 4
# Add partly zero valued element
0 ipset add test 2.0.0.1,0x0
# Test partly zero valued element
Name: test
Type: hash:ip,mark
-Header: family inet markmask 0xffffffff hashsize 1024 maxelem 65536 timeout 5
-Size in memory: 640
+Header: family inet markmask 0xffffffff hashsize 1024 maxelem 65536 timeout 4
+Size in memory: 536
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test hash:ip,port,ip timeout 5
+0 ipset create test hash:ip,port,ip timeout 4
# Add partly zero valued element
0 ipset add test 2.0.0.1,0,0.0.0.0
# Test partly zero valued element
Name: test
Type: hash:ip,port,ip
-Header: family inet hashsize 1024 maxelem 65536 timeout 5
-Size in memory: 840
+Header: family inet hashsize 1024 maxelem 65536 timeout 4
+Size in memory: 664
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test hash:ip,port,net timeout 5
+0 ipset create test hash:ip,port,net timeout 4
# Add partly zero valued element
0 ipset add test 2.0.0.1,0,192.168.0.0/24
# Test partly zero valued element
# Create a set with timeout
-0 ipset create test hash:ip,port timeout 5
+0 ipset create test hash:ip,port timeout 4
# Add partly zero valued element
0 ipset add test 2.0.0.1,0
# Test partly zero valued element
Name: test
Type: hash:ip,port
-Header: family inet hashsize 1024 maxelem 65536 timeout 5
-Size in memory: 640
+Header: family inet hashsize 1024 maxelem 65536 timeout 4
+Size in memory: 528
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# IP: Create a set with timeout
-0 ipset -N test iphash --hashsize 128 timeout 5
+0 ipset -N test iphash --hashsize 128 timeout 4
# Range: Add zero valued element
1 ipset -A test 0.0.0.0
# Range: Test zero valued element
1 ipset -T test 0.0.0.0
# IP: Add first random value
-0 ipset -A test 2.0.0.1 timeout 5
+0 ipset -A test 2.0.0.1 timeout 4
# IP: Add second random value
0 ipset -A test 192.168.68.69 timeout 0
# IP: Test first random value
# IP: Delete test set
0 ipset -X test
# IP: Restore values so that rehashing is triggered
-0 sed 's/hashsize 128/hashsize 128 timeout 5/' iphash.t.restore | ipset -R
+0 sed 's/hashsize 128/hashsize 128 timeout 4/' iphash.t.restore | ipset -R
# IP: Check that the values are restored
0 test `ipset -S test| grep add| wc -l` -eq 129
# Sleep 5s so that elements can time out
# IP: Destroy sets
0 ipset -X
# Network: Create a set with timeout
-0 ipset -N test iphash --hashsize 128 --netmask 24 timeout 5
+0 ipset -N test iphash --hashsize 128 --netmask 24 timeout 4
# Network: Add zero valued element
1 ipset -A test 0.0.0.0
# Network: Test zero valued element
Name: test
Type: hash:ip
-Header: family inet hashsize 128 maxelem 65536 timeout 5
-Size in memory: 352
+Header: family inet hashsize 128 maxelem 65536 timeout 4
+Size in memory: 336
References: 0
-Number of entries: 2
+Number of entries: 1
Members:
192.168.68.69 timeout 0
Name: test
Type: hash:ip
-Header: family inet hashsize 128 maxelem 65536 netmask 24 timeout 5
-Size in memory: 464
+Header: family inet hashsize 128 maxelem 65536 netmask 24 timeout 4
+Size in memory: 432
References: 0
-Number of entries: 3
+Number of entries: 1
Members:
200.100.10.0 timeout 0
# Create a set with timeout
-0 ipset create test hash:ip,mark family inet6 timeout 5
+0 ipset create test hash:ip,mark family inet6 timeout 4
# Add partly zero valued element
0 ipset add test 2:0:0::1,0x0
# Test partly zero valued element
Name: test
Type: hash:ip,mark
-Header: family inet6 markmask 0xffffffff hashsize 1024 maxelem 65536 timeout 5
-Size in memory: 1088
+Header: family inet6 markmask 0xffffffff hashsize 1024 maxelem 65536 timeout 4
+Size in memory: 800
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test hash:ip,port,ip family inet6 timeout 5
+0 ipset create test hash:ip,port,ip family inet6 timeout 4
# Add partly zero valued element
0 ipset add test 2:0:0::1,0,0:0:0::0
# Test partly zero valued element
Name: test
Type: hash:ip,port,ip
-Header: family inet6 hashsize 1024 maxelem 65536 timeout 5
-Size in memory: 1608
+Header: family inet6 hashsize 1024 maxelem 65536 timeout 4
+Size in memory: 1072
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test hash:ip,port family inet6 timeout 5
+0 ipset create test hash:ip,port family inet6 timeout 4
# Add partly zero valued element
0 ipset add test 2:0:0::1,0
# Test partly zero valued element
Name: test
Type: hash:ip,port
-Header: family inet6 hashsize 1024 maxelem 65536 timeout 5
-Size in memory: 1088
+Header: family inet6 hashsize 1024 maxelem 65536 timeout 4
+Size in memory: 800
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# IP: Create a set with timeout
-0 ipset -N test iphash -6 --hashsize 128 timeout 5
+0 ipset -N test iphash -6 --hashsize 128 timeout 4
# IP: Add zero valued element
1 ipset -A test ::
# IP: Test zero valued element
# IP: Delete zero valued element
1 ipset -D test ::
# IP: Add first random value
-0 ipset -A test 2:0:0::1 timeout 5
+0 ipset -A test 2:0:0::1 timeout 4
# IP: Add second random value
0 ipset -A test 192:168:68::69 timeout 0
# IP: Test first random value
# IP: Delete test set
0 ipset -X test
# Network: Create a set with timeout
-0 ipset -N test iphash -6 --hashsize 128 --netmask 64 timeout 5
+0 ipset -N test iphash -6 --hashsize 128 --netmask 64 timeout 4
# Network: Add zero valued element
1 ipset -A test ::
# Network: Test zero valued element
Name: test
Type: hash:ip
-Header: family inet6 hashsize 128 maxelem 65536 timeout 5
-Size in memory: 512
+Header: family inet6 hashsize 128 maxelem 65536 timeout 4
+Size in memory: 416
References: 0
-Number of entries: 2
+Number of entries: 1
Members:
192:168:68::69 timeout 0
Name: test
Type: hash:ip
-Header: family inet6 hashsize 128 maxelem 65536 netmask 64 timeout 5
-Size in memory: 704
+Header: family inet6 hashsize 128 maxelem 65536 netmask 64 timeout 4
+Size in memory: 544
References: 0
-Number of entries: 3
+Number of entries: 1
Members:
200:100:10:: timeout 0
# MAC: Create a set with timeout
-0 ipset -N test machash --hashsize 128 timeout 5
+0 ipset -N test machash --hashsize 128 timeout 4
# Range: Add zero valued element
1 ipset -A test 0:0:0:0:0:0
# Range: Test zero valued element
1 ipset -T test 0:0:0:0:0:0
# MAC: Add first random value
-0 ipset -A test 0:0:0:0:2:0 timeout 5
+0 ipset -A test 0:0:0:0:2:0 timeout 4
# MAC: Add second random value
0 ipset -A test 0:a:0:0:0:0 timeout 0
# MAC: Test first random value
Name: test
Type: hash:mac
-Header: hashsize 128 maxelem 65536 timeout 5
-Size in memory: 384
+Header: hashsize 128 maxelem 65536 timeout 4
+Size in memory: 336
References: 0
-Number of entries: 2
+Number of entries: 1
Members:
00:0A:00:00:00:00 timeout 0
# Create a set with timeout
-0 ipset create test hash:net,net hashsize 128 timeout 5
+0 ipset create test hash:net,net hashsize 128 timeout 4
# Add zero valued element
1 ipset add test 0.0.0.0/0,0.0.0.0/0
# Test zero valued element
Name: test
Type: hash:net,net
-Header: family inet hashsize 128 maxelem 65536 timeout 5
-Size in memory: 1288
+Header: family inet hashsize 128 maxelem 65536 timeout 4
+Size in memory: 920
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test hash:net,port,net timeout 5
+0 ipset create test hash:net,port,net timeout 4
# Add partly zero valued element
0 ipset add test 2.0.0.1/24,0,192.168.0.0/24
# Test partly zero valued element
# Create a set with timeout
-0 ipset create test hash:net,port hashsize 128 timeout 5
+0 ipset create test hash:net,port hashsize 128 timeout 4
# Add zero valued element
1 ipset add test 0.0.0.0/0,0
# Test zero valued element
Name: test
Type: hash:net,port
-Header: family inet hashsize 128 maxelem 65536 timeout 5
-Size in memory: 1024
+Header: family inet hashsize 128 maxelem 65536 timeout 4
+Size in memory: 880
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test nethash hashsize 128 timeout 5
+0 ipset create test nethash hashsize 128 timeout 4
# Add zero valued element
1 ipset add test 0.0.0.0/0
# Test zero valued element
Name: test
Type: hash:net
-Header: family inet hashsize 128 maxelem 65536 timeout 5
-Size in memory: 895
+Header: family inet hashsize 128 maxelem 65536 timeout 4
+Size in memory: 784
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test hash:net,net family inet6 hashsize 128 timeout 5
+0 ipset create test hash:net,net family inet6 hashsize 128 timeout 4
# Add zero valued element
1 ipset add test ::/0,::/0
# Test zero valued element
Name: test
Type: hash:net,net
-Header: family inet6 hashsize 128 maxelem 65536 timeout 5
-Size in memory: 3144
+Header: family inet6 hashsize 128 maxelem 65536 timeout 4
+Size in memory: 2608
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
# Create a set with timeout
-0 ipset create test hash:net,port family inet6 hashsize 128 timeout 5
+0 ipset create test hash:net,port family inet6 hashsize 128 timeout 4
# Add zero valued element
1 ipset add test ::/0,tcp:8
# Test zero valued element
Name: test
Type: hash:net,port
-Header: family inet6 hashsize 128 maxelem 65536 timeout 5
-Size in memory: 2352
+Header: family inet6 hashsize 128 maxelem 65536 timeout 4
+Size in memory: 1984
References: 0
-Number of entries: 5
+Number of entries: 1
Members:
1:1:1::1,tcp:8 timeout 0
# Create a set with timeout
-0 ipset create test nethash family inet6 hashsize 128 timeout 5
+0 ipset create test nethash family inet6 hashsize 128 timeout 4
# Add zero valued element
1 ipset add test ::/0
# Test zero valued element
Name: test
Type: hash:net
-Header: family inet6 hashsize 128 maxelem 65536 timeout 5
-Size in memory: 2112
+Header: family inet6 hashsize 128 maxelem 65536 timeout 4
+Size in memory: 1824
References: 0
-Number of entries: 4
+Number of entries: 0
Members:
continue
;;
skip)
- eval $cmd
+ eval $cmd >/dev/null
if [ $? -ne 0 ]; then
echo "Skipping tests, '$cmd' failed"
break
# Check listing
0 diff -u -I 'Size in memory.*' .foo setlist.t.list3
# List all sets
-0 ipset list | grep -v Revision: > .foo
+0 sleep .1s; ipset list | grep -v Revision: > .foo
# Check listing
0 diff -u -I 'Size in memory.*' .foo setlist.t.list4
# Flush sets
# Delete set from the set
0 ipset del test a
# Check reference number of deleted set
-0 ref=`ipset list a | grep References | sed 's/References: //'` && test $ref -eq 0
+0 ref=`sleep .1s; ipset list a | grep References | sed 's/References: //'` && test $ref -eq 0
# Add element to set a
0 ipset add a 1.1.1.1
# Swap sets