0 diff -I 'Size in memory.*' .foo hash:ip,port,ip.t.list1 && rm .foo
# Flush test set
0 ipset flush test
+# Add multiple elements in one step
+0 ipset add test 1.1.1.1-1.1.1.4,80-84,2.2.2.2
+# Delete multiple elements in one step
+0 ipset del test 1.1.1.2-1.1.1.3,tcp:81-82,2.2.2.2
+# Check number of elements after multi-add/multi-del
+0 n=`ipset save test|wc -l` && test $n -eq 17
# Delete test set
0 ipset destroy test
# eof
0 diff -I 'Size in memory.*' .foo hash:ip,port.t.list1 && rm .foo
# Flush test set
0 ipset flush test
+# Add multiple elements in one step
+0 ipset add test 1.1.1.1-1.1.1.4,80-84
+# Delete multiple elements in one step
+0 ipset del test 1.1.1.2-1.1.1.3,tcp:81-82
+# Check number of elements after multi-add/multi-del
+0 n=`ipset save test|wc -l` && test $n -eq 17
# Delete test set
0 ipset destroy test
# Create a set
0 diff -I 'Size in memory.*' .foo hash:ip.t.list0 && rm .foo
# IP: Flush test set
0 ipset -F test
+# IP: Add multiple elements in one step
+0 ipset -A test 1.1.1.1-1.1.1.5
+# IP: Delete multiple elements in one step
+0 ipset -D test 1.1.1.2-1.1.1.5
+# IP: Test element after deletion
+0 ipset -T test 1.1.1.1
+# IP: Test deleted element
+1 ipset -T test 1.1.1.2
# IP: Delete test set
0 ipset -X test
# IP: Restore values so that rehashing is triggered
0 diff -I 'Size in memory.*' .foo hash:ip6,port,ip6.t.list1 && rm .foo
# Flush test set
0 ipset flush test
+# Add multiple elements in one step
+0 ipset add test 1::1,udp:80-85,2::2
+# Delete multiple elements in one step
+0 ipset del test 1::1,udp:81-85,2::2
+# Check elements after multiple add/del
+0 ipset test test 1::1,udp:80,2::2
# Delete test set
0 ipset destroy test
# eof
0 diff -I 'Size in memory.*' .foo hash:ip6,port.t.list1 && rm .foo
# Flush test set
0 ipset flush test
+# Add multiple elements in one step
+0 ipset add test 1::1,udp:80-85
+# Delete multiple elements in one step
+0 ipset del test 1::1,udp:81-84
+# Check elements after multiple add/del
+0 ipset test test 1::1,udp:80
# Delete test set
0 ipset destroy test
# eof
0 diff -I 'Size in memory.*' .foo hash:ip6.t.list0 && rm .foo
# IP: Flush test set
0 ipset -F test
+# IP: Try to add multiple elements in one step
+1 ipset -A test 1::1-1::10
# IP: Delete test set
0 ipset -X test
# Network: Create a set with timeout
0 diff -I 'Size in memory.*' .foo hash:net,port.t.list1 && rm .foo
# Flush test set
0 ipset flush test
+# Add multiple elements in one step
+0 ipset add test 1.1.1.1/24,80-84 timeout 0
+# Delete multiple elements in one step
+0 ipset del test 1.1.1.2/24,tcp:81-82
+# Check number of elements after multi-add/multi-del
+0 n=`ipset save test|wc -l` && test $n -eq 4
# Delete test set
0 ipset destroy test
# eof
0 diff -I 'Size in memory.*' .foo hash:net6,port.t.list1 && rm .foo
# Flush test set
0 ipset flush test
+# Add multiple elements in one step
+0 ipset add test 1::1/64,80-84 timeout 0
+# Delete multiple elements in one step
+0 ipset del test 1::1/64,tcp:81-82
+# Check number of elements after multi-add/multi-del
+0 n=`ipset save test|wc -l` && test $n -eq 4
# Delete test set
0 ipset destroy test
# eof