1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
# Range: Try to create from an invalid range
1 ipset -N test macipmap --from 2.0.0.1 --to 2.1.0.1
# Range: Create a set from a valid range
0 ipset -N test macipmap --from 2.0.0.1 --to 2.1.0.0
# Range: Add lower boundary
0 ipset -A test 2.0.0.1
# Range: Add upper boundary
0 ipset -A test 2.1.0.0
# Range: Test lower boundary
0 ipset -T test 2.0.0.1
# Range: Test upper boundary
0 ipset -T test 2.1.0.0
# Range: Test value not added to the set
1 ipset -T test 2.0.0.2
# Range: Test value before lower boundary
1 ipset -T test 2.0.0.0
# Range: Test value after upper boundary
1 ipset -T test 2.1.0.1
# Range: Try to add value before lower boundary
1 ipset -A test 2.0.0.0
# Range: Try to add value after upper boundary
1 ipset -A test 2.1.0.1
# Range: Delete element not added to the set
1 ipset -D test 2.0.0.2
# Range: Try to add value with MAC
0 ipset -A test 2.0.0.2,00:11:22:33:44:55
# Range: Test value with invalid MAC
1 ipset -T test 2.0.0.2,00:11:22:33:44:56
# Range: Test value with valid MAC
0 ipset -T test 2.0.0.2,00:11:22:33:44:55
# Range: Add MAC to already added element
0 ipset -A test 2.0.0.1,00:11:22:33:44:56
# Range: Test value without supplying MAC
0 ipset -T test 2.0.0.1
# Range: Test value with valid MAC
0 ipset -T test 2.0.0.1,00:11:22:33:44:56
# Range: Add an element in the middle
0 ipset -A test 2.0.200.214,00:11:22:33:44:57
# Range: Delete the same element
0 ipset -D test 2.0.200.214
# Range: List set
0 ipset -L test > .foo
# Range: Check listing
0 diff -I 'Size in memory.*' .foo macipmap.t.list0 && rm .foo
# Range: Flush test set
0 ipset -F test
# Range: Delete test set
0 ipset -X test
# Network: Try to create a set from an invalid network
1 ipset -N test macipmap --network 2.0.0.0/15
# Network: Create a set from a valid network
0 ipset -N test macipmap --network 2.0.0.0/16
# Network: Add lower boundary
0 ipset -A test 2.0.0.0
# Network: Add upper boundary
0 ipset -A test 2.0.255.255
# Network: Test lower boundary
0 ipset -T test 2.0.0.0
# Network: Test upper boundary
0 ipset -T test 2.0.255.255
# Network: Test value not added to the set
1 ipset -T test 2.0.0.1
# Network: Test value before lower boundary
1 ipset -T test 1.255.255.255
# Network: Test value after upper boundary
1 ipset -T test 2.1.0.0
# Network: Try to add value before lower boundary
1 ipset -A test 1.255.255.255
# Network: Try to add value after upper boundary
1 ipset -A test 2.1.0.0
# Network: Delete element not added to the set
1 ipset -D test 2.0.0.2
# Network: Try to add value with MAC
0 ipset -A test 2.0.0.2,00:11:22:33:44:55
# Network: Test value with invalid MAC
1 ipset -T test 2.0.0.2,00:11:22:33:44:56
# Network: Test value with valid MAC
0 ipset -T test 2.0.0.2,00:11:22:33:44:55
# Network: Add MAC to already added element
0 ipset -A test 2.0.255.255,00:11:22:33:44:56
# Network: List set
0 ipset -L test > .foo
# Network: Check listing
0 diff -I 'Size in memory.*' .foo macipmap.t.list1 && rm .foo
# Network: Flush test set
0 ipset -F test
# Network: Delete test set
0 ipset -X test
# Range: Create a set from a valid range with timeout
0 ipset -N test macipmap --from 2.0.0.1 --to 2.1.0.0 timeout 10
# Range: Add lower boundary
0 ipset -A test 2.0.0.1 timeout 8
# Range: Add upper boundary
0 ipset -A test 2.1.0.0 timeout 5
# Range: Test lower boundary
0 ipset -T test 2.0.0.1
# Range: Test upper boundary
0 ipset -T test 2.1.0.0
# Range: Test value not added to the set
1 ipset -T test 2.0.0.2
# Range: Test value before lower boundary
1 ipset -T test 2.0.0.0
# Range: Test value after upper boundary
1 ipset -T test 2.1.0.1
# Range: Try to add value before lower boundary
1 ipset -A test 2.0.0.0
# Range: Try to add value after upper boundary
1 ipset -A test 2.1.0.1
# Range: Try to add value with MAC
0 ipset -A test 2.0.0.2,00:11:22:33:44:55 timeout 8
# Range: Test value with invalid MAC
1 ipset -T test 2.0.0.2,00:11:22:33:44:56
# Range: Test value with valid MAC
0 ipset -T test 2.0.0.2,00:11:22:33:44:55
# Range: Add MAC to already added element
0 ipset -A test 2.0.0.1,00:11:22:33:44:56
# Range: Add an element in the middle
0 ipset -A test 2.0.200.214,00:11:22:33:44:57
# Range: Delete the same element
0 ipset -D test 2.0.200.214
# Range: List set
0 ipset -L test | sed 's/timeout ./timeout x/' > .foo
# Range: Check listing
0 diff -I 'Size in memory.*' .foo macipmap.t.list3 && rm .foo
# Range: wait 10s so that elements can timeout
0 sleep 10
# Range: List set
0 ipset -L test > .foo
# Range: Check listing
0 diff -I 'Size in memory.*' .foo macipmap.t.list2 && rm .foo
# Range: Flush test set
0 ipset -F test
# Range: Delete test set
0 ipset -X test
# eof
|