162ad42ecSRoman Mashak[
262ad42ecSRoman Mashak    {
362ad42ecSRoman Mashak        "id": "f62b",
462ad42ecSRoman Mashak        "name": "Add ingress matchall filter for protocol ipv4 and action PASS",
562ad42ecSRoman Mashak        "category": [
662ad42ecSRoman Mashak            "filter",
762ad42ecSRoman Mashak            "matchall"
862ad42ecSRoman Mashak        ],
962ad42ecSRoman Mashak        "setup": [
10c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
11c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
1262ad42ecSRoman Mashak        ],
13c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ip matchall action ok",
1462ad42ecSRoman Mashak        "expExitCode": "0",
15c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 1 protocol ip matchall",
1662ad42ecSRoman Mashak        "matchPattern": "^filter parent ffff: protocol ip pref 1 matchall.*handle 0x1.*gact action pass.*ref 1 bind 1",
1762ad42ecSRoman Mashak        "matchCount": "1",
1862ad42ecSRoman Mashak        "teardown": [
19c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
20c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
2162ad42ecSRoman Mashak        ]
2262ad42ecSRoman Mashak    },
2362ad42ecSRoman Mashak    {
2462ad42ecSRoman Mashak        "id": "7f09",
2562ad42ecSRoman Mashak        "name": "Add egress matchall filter for protocol ipv4 and action PASS",
2662ad42ecSRoman Mashak        "category": [
2762ad42ecSRoman Mashak            "filter",
2862ad42ecSRoman Mashak            "matchall"
2962ad42ecSRoman Mashak        ],
3062ad42ecSRoman Mashak        "setup": [
31c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
32c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY root handle 1: prio"
3362ad42ecSRoman Mashak        ],
34c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: handle 0x1 prio 1 protocol ip matchall action ok",
3562ad42ecSRoman Mashak        "expExitCode": "0",
36c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent 1: handle 1 prio 1 protocol ip matchall",
3762ad42ecSRoman Mashak        "matchPattern": "^filter parent 1: protocol ip pref 1 matchall.*handle 0x1.*gact action pass.*ref 1 bind 1",
3862ad42ecSRoman Mashak        "matchCount": "1",
3962ad42ecSRoman Mashak        "teardown": [
40c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY root handle 1: prio",
41c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
4262ad42ecSRoman Mashak        ]
4362ad42ecSRoman Mashak    },
4462ad42ecSRoman Mashak    {
4562ad42ecSRoman Mashak        "id": "0596",
4662ad42ecSRoman Mashak        "name": "Add ingress matchall filter for protocol ipv6 and action DROP",
4762ad42ecSRoman Mashak        "category": [
4862ad42ecSRoman Mashak            "filter",
4962ad42ecSRoman Mashak            "matchall"
5062ad42ecSRoman Mashak        ],
5162ad42ecSRoman Mashak        "setup": [
52c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
53c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
5462ad42ecSRoman Mashak        ],
55c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall action drop",
5662ad42ecSRoman Mashak        "expExitCode": "0",
57c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 1 protocol ipv6 matchall",
5862ad42ecSRoman Mashak        "matchPattern": "^filter parent ffff: protocol ipv6 pref 1 matchall.*handle 0x1.*gact action drop.*ref 1 bind 1",
5962ad42ecSRoman Mashak        "matchCount": "1",
6062ad42ecSRoman Mashak        "teardown": [
61c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
62c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
6362ad42ecSRoman Mashak        ]
6462ad42ecSRoman Mashak    },
6562ad42ecSRoman Mashak    {
6662ad42ecSRoman Mashak        "id": "41df",
6762ad42ecSRoman Mashak        "name": "Add egress matchall filter for protocol ipv6 and action DROP",
6862ad42ecSRoman Mashak        "category": [
6962ad42ecSRoman Mashak            "filter",
7062ad42ecSRoman Mashak            "matchall"
7162ad42ecSRoman Mashak        ],
7262ad42ecSRoman Mashak        "setup": [
73c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
74c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY root handle 1: prio"
7562ad42ecSRoman Mashak        ],
76c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: handle 0x1 prio 1 protocol ipv6 matchall action drop",
7762ad42ecSRoman Mashak        "expExitCode": "0",
78c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent 1: handle 1 prio 1 protocol ipv6 matchall",
7962ad42ecSRoman Mashak        "matchPattern": "^filter parent 1: protocol ipv6 pref 1 matchall.*handle 0x1.*gact action drop.*ref 1 bind 1",
8062ad42ecSRoman Mashak        "matchCount": "1",
8162ad42ecSRoman Mashak        "teardown": [
82c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY root handle 1: prio",
83c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
8462ad42ecSRoman Mashak        ]
8562ad42ecSRoman Mashak    },
8662ad42ecSRoman Mashak    {
8762ad42ecSRoman Mashak        "id": "e1da",
8862ad42ecSRoman Mashak        "name": "Add ingress matchall filter for protocol ipv4 and action PASS with priority at 16-bit maximum",
8962ad42ecSRoman Mashak        "category": [
9062ad42ecSRoman Mashak            "filter",
9162ad42ecSRoman Mashak            "matchall"
9262ad42ecSRoman Mashak        ],
9362ad42ecSRoman Mashak        "setup": [
94c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
95c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
9662ad42ecSRoman Mashak        ],
97c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 65535 protocol ipv4 matchall action pass",
9862ad42ecSRoman Mashak        "expExitCode": "0",
99c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 65535 protocol ipv4 matchall",
10062ad42ecSRoman Mashak        "matchPattern": "^filter parent ffff: protocol ip pref 65535 matchall.*handle 0x1.*gact action pass.*ref 1 bind 1",
10162ad42ecSRoman Mashak        "matchCount": "1",
10262ad42ecSRoman Mashak        "teardown": [
103c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
104c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
10562ad42ecSRoman Mashak        ]
10662ad42ecSRoman Mashak    },
10762ad42ecSRoman Mashak    {
10862ad42ecSRoman Mashak        "id": "3de5",
10962ad42ecSRoman Mashak        "name": "Add egress matchall filter for protocol ipv4 and action PASS with priority at 16-bit maximum",
11062ad42ecSRoman Mashak        "category": [
11162ad42ecSRoman Mashak            "filter",
11262ad42ecSRoman Mashak            "matchall"
11362ad42ecSRoman Mashak        ],
11462ad42ecSRoman Mashak        "setup": [
115c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
116c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY root handle 1: prio"
11762ad42ecSRoman Mashak        ],
118c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: handle 0x1 prio 65535 protocol ipv4 matchall action pass",
11962ad42ecSRoman Mashak        "expExitCode": "0",
120c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent 1: handle 1 prio 65535 protocol ipv4 matchall",
12162ad42ecSRoman Mashak        "matchPattern": "^filter parent 1: protocol ip pref 65535 matchall.*handle 0x1.*gact action pass.*ref 1 bind 1",
12262ad42ecSRoman Mashak        "matchCount": "1",
12362ad42ecSRoman Mashak        "teardown": [
124c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY root handle 1: prio",
125c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
12662ad42ecSRoman Mashak        ]
12762ad42ecSRoman Mashak    },
12862ad42ecSRoman Mashak    {
12962ad42ecSRoman Mashak        "id": "72d7",
13062ad42ecSRoman Mashak        "name": "Add ingress matchall filter for protocol ipv4 and action PASS with priority exceeding 16-bit maximum",
13162ad42ecSRoman Mashak        "category": [
13262ad42ecSRoman Mashak            "filter",
13362ad42ecSRoman Mashak            "matchall"
13462ad42ecSRoman Mashak        ],
13562ad42ecSRoman Mashak        "setup": [
136c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
137c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
13862ad42ecSRoman Mashak        ],
139c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 655355 protocol ipv4 matchall action pass",
14062ad42ecSRoman Mashak        "expExitCode": "255",
141c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 655355 protocol ipv4 matchall",
14262ad42ecSRoman Mashak        "matchPattern": "^filter parent ffff: protocol ip pref 655355 matchall.*handle 0x1.*gact action pass.*ref 1 bind 1",
14362ad42ecSRoman Mashak        "matchCount": "0",
14462ad42ecSRoman Mashak        "teardown": [
145c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
146c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
14762ad42ecSRoman Mashak        ]
14862ad42ecSRoman Mashak    },
14962ad42ecSRoman Mashak    {
15062ad42ecSRoman Mashak        "id": "41d3",
15162ad42ecSRoman Mashak        "name": "Add egress matchall filter for protocol ipv4 and action PASS with priority exceeding 16-bit maximum",
15262ad42ecSRoman Mashak        "category": [
15362ad42ecSRoman Mashak            "filter",
15462ad42ecSRoman Mashak            "matchall"
15562ad42ecSRoman Mashak        ],
15662ad42ecSRoman Mashak        "setup": [
157c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
158c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY root handle 1: prio"
15962ad42ecSRoman Mashak        ],
160c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: handle 0x1 prio 655355 protocol ipv4 matchall action pass",
16162ad42ecSRoman Mashak        "expExitCode": "255",
162c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent 1: handle 1 prio 655355 protocol ipv4 matchall",
16362ad42ecSRoman Mashak        "matchPattern": "^filter parent 1: protocol ip pref 655355 matchall.*handle 0x1.*gact action pass.*ref 1 bind 1",
16462ad42ecSRoman Mashak        "matchCount": "0",
16562ad42ecSRoman Mashak        "teardown": [
166c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY root handle 1: prio",
167c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
16862ad42ecSRoman Mashak        ]
16962ad42ecSRoman Mashak    },
17062ad42ecSRoman Mashak    {
17162ad42ecSRoman Mashak        "id": "f755",
17262ad42ecSRoman Mashak        "name": "Add ingress matchall filter for all protocols and action CONTINUE with handle at 32-bit maximum",
17362ad42ecSRoman Mashak        "category": [
17462ad42ecSRoman Mashak            "filter",
17562ad42ecSRoman Mashak            "matchall"
17662ad42ecSRoman Mashak        ],
17762ad42ecSRoman Mashak        "setup": [
178c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
179c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
18062ad42ecSRoman Mashak        ],
181c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0xffffffff prio 1 protocol all matchall action continue",
18262ad42ecSRoman Mashak        "expExitCode": "0",
183c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 0xffffffff prio 1 protocol all matchall",
18462ad42ecSRoman Mashak        "matchPattern": "^filter parent ffff: protocol all pref 1 matchall.*handle 0xffffffff.*gact action continue.*ref 1 bind 1",
18562ad42ecSRoman Mashak        "matchCount": "1",
18662ad42ecSRoman Mashak        "teardown": [
187c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
188c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
18962ad42ecSRoman Mashak        ]
19062ad42ecSRoman Mashak    },
19162ad42ecSRoman Mashak    {
19262ad42ecSRoman Mashak        "id": "2c33",
19362ad42ecSRoman Mashak        "name": "Add egress matchall filter for all protocols and action CONTINUE with handle at 32-bit maximum",
19462ad42ecSRoman Mashak        "category": [
19562ad42ecSRoman Mashak            "filter",
19662ad42ecSRoman Mashak            "matchall"
19762ad42ecSRoman Mashak        ],
19862ad42ecSRoman Mashak        "setup": [
199c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
200c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY root handle 1: prio"
20162ad42ecSRoman Mashak        ],
202c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: handle 0xffffffff prio 1 protocol all matchall action continue",
20362ad42ecSRoman Mashak        "expExitCode": "0",
204c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent 1: handle 0xffffffff prio 1 protocol all matchall",
20562ad42ecSRoman Mashak        "matchPattern": "^filter parent 1: protocol all pref 1 matchall.*handle 0xffffffff.*gact action continue.*ref 1 bind 1",
20662ad42ecSRoman Mashak        "matchCount": "1",
20762ad42ecSRoman Mashak        "teardown": [
208c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY root handle 1: prio",
209c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
21062ad42ecSRoman Mashak        ]
21162ad42ecSRoman Mashak    },
21262ad42ecSRoman Mashak    {
21362ad42ecSRoman Mashak        "id": "0e4a",
21462ad42ecSRoman Mashak        "name": "Add ingress matchall filter for all protocols and action RECLASSIFY with skip_hw flag",
21562ad42ecSRoman Mashak        "category": [
21662ad42ecSRoman Mashak            "filter",
21762ad42ecSRoman Mashak            "matchall"
21862ad42ecSRoman Mashak        ],
21962ad42ecSRoman Mashak        "setup": [
220c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
221c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
22262ad42ecSRoman Mashak        ],
223c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol all matchall skip_hw action reclassify",
22462ad42ecSRoman Mashak        "expExitCode": "0",
225c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 0x1 prio 1 protocol all matchall",
22662ad42ecSRoman Mashak        "matchPattern": "^filter parent ffff: protocol all pref 1 matchall.*handle 0x1.*skip_hw.*not_in_hw.*gact action reclassify.*ref 1 bind 1",
22762ad42ecSRoman Mashak        "matchCount": "1",
22862ad42ecSRoman Mashak        "teardown": [
229c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
230c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
23162ad42ecSRoman Mashak        ]
23262ad42ecSRoman Mashak    },
23362ad42ecSRoman Mashak    {
23462ad42ecSRoman Mashak        "id": "7f60",
23562ad42ecSRoman Mashak        "name": "Add egress matchall filter for all protocols and action RECLASSIFY with skip_hw flag",
23662ad42ecSRoman Mashak        "category": [
23762ad42ecSRoman Mashak            "filter",
23862ad42ecSRoman Mashak            "matchall"
23962ad42ecSRoman Mashak        ],
24062ad42ecSRoman Mashak        "setup": [
241c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
242c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY root handle 1: prio"
24362ad42ecSRoman Mashak        ],
244c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: handle 0x1 prio 1 protocol all matchall skip_hw action reclassify",
24562ad42ecSRoman Mashak        "expExitCode": "0",
246c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent 1: handle 0x1 prio 1 protocol all matchall",
24762ad42ecSRoman Mashak        "matchPattern": "^filter parent 1: protocol all pref 1 matchall.*handle 0x1.*skip_hw.*not_in_hw.*gact action reclassify.*ref 1 bind 1",
24862ad42ecSRoman Mashak        "matchCount": "1",
24962ad42ecSRoman Mashak        "teardown": [
250c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY root handle 1: prio",
251c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
25262ad42ecSRoman Mashak        ]
25362ad42ecSRoman Mashak    },
25462ad42ecSRoman Mashak    {
25562ad42ecSRoman Mashak        "id": "8bd2",
25662ad42ecSRoman Mashak        "name": "Add ingress matchall filter for protocol ipv6 and action PASS with classid",
25762ad42ecSRoman Mashak        "category": [
25862ad42ecSRoman Mashak            "filter",
25962ad42ecSRoman Mashak            "matchall"
26062ad42ecSRoman Mashak        ],
26162ad42ecSRoman Mashak        "setup": [
262c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
263c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
26462ad42ecSRoman Mashak        ],
265c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall classid 1:1 action pass",
26662ad42ecSRoman Mashak        "expExitCode": "0",
267c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall",
26862ad42ecSRoman Mashak        "matchPattern": "^filter parent ffff: protocol ipv6 pref 1 matchall.*handle 0x1.*flowid 1:1.*gact action pass.*ref 1 bind 1",
26962ad42ecSRoman Mashak        "matchCount": "1",
27062ad42ecSRoman Mashak        "teardown": [
271c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
272c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
27362ad42ecSRoman Mashak        ]
27462ad42ecSRoman Mashak    },
27562ad42ecSRoman Mashak    {
27662ad42ecSRoman Mashak        "id": "2a4a",
27762ad42ecSRoman Mashak        "name": "Add ingress matchall filter for protocol ipv6 and action PASS with invalid classid",
27862ad42ecSRoman Mashak        "category": [
27962ad42ecSRoman Mashak            "filter",
28062ad42ecSRoman Mashak            "matchall"
28162ad42ecSRoman Mashak        ],
28262ad42ecSRoman Mashak        "setup": [
283c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
284c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress"
28562ad42ecSRoman Mashak        ],
286c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall classid 6789defg action pass",
28762ad42ecSRoman Mashak        "expExitCode": "1",
288c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall",
28962ad42ecSRoman Mashak        "matchPattern": "^filter protocol ipv6 pref 1 matchall.*handle 0x1.*flowid 6789defg.*gact action pass.*ref 1 bind 1",
29062ad42ecSRoman Mashak        "matchCount": "0",
29162ad42ecSRoman Mashak        "teardown": [
292c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
293c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
29462ad42ecSRoman Mashak        ]
29562ad42ecSRoman Mashak    },
29662ad42ecSRoman Mashak    {
29762ad42ecSRoman Mashak        "id": "eaf8",
29862ad42ecSRoman Mashak        "name": "Delete single ingress matchall filter",
29962ad42ecSRoman Mashak        "category": [
30062ad42ecSRoman Mashak            "filter",
30162ad42ecSRoman Mashak            "matchall"
30262ad42ecSRoman Mashak        ],
30362ad42ecSRoman Mashak        "setup": [
304c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
305c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress",
306c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall classid 1:2 action pass"
30762ad42ecSRoman Mashak        ],
308c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter del dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall",
30962ad42ecSRoman Mashak        "expExitCode": "0",
310c11a99e7SVlad Buslov        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv6 matchall",
31162ad42ecSRoman Mashak        "matchPattern": "^filter protocol ipv6 pref 1 matchall.*handle 0x1.*flowid 1:2.*gact action pass.*ref 1 bind 1",
31262ad42ecSRoman Mashak        "matchCount": "0",
31362ad42ecSRoman Mashak        "teardown": [
314c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
315c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
31662ad42ecSRoman Mashak        ]
31762ad42ecSRoman Mashak    },
31862ad42ecSRoman Mashak    {
31962ad42ecSRoman Mashak        "id": "76ad",
32062ad42ecSRoman Mashak        "name": "Delete all ingress matchall filters",
32162ad42ecSRoman Mashak        "category": [
32262ad42ecSRoman Mashak            "filter",
32362ad42ecSRoman Mashak            "matchall"
32462ad42ecSRoman Mashak        ],
32562ad42ecSRoman Mashak        "setup": [
326c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
327c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress",
328c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol all matchall classid 1:2 action pass",
329c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x2 prio 2 protocol all matchall classid 1:3 action pass",
330c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x3 prio 3 protocol all matchall classid 1:4 action pass",
331c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x4 prio 4 protocol all matchall classid 1:5 action pass"
33262ad42ecSRoman Mashak        ],
333c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter del dev $DUMMY parent ffff:",
33462ad42ecSRoman Mashak        "expExitCode": "0",
335c11a99e7SVlad Buslov        "verifyCmd": "$TC filter show dev $DUMMY parent ffff:",
33662ad42ecSRoman Mashak        "matchPattern": "^filter protocol all pref.*matchall.*handle.*flowid.*gact action pass",
33762ad42ecSRoman Mashak        "matchCount": "0",
33862ad42ecSRoman Mashak        "teardown": [
339c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
340c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
34162ad42ecSRoman Mashak        ]
34262ad42ecSRoman Mashak    },
34362ad42ecSRoman Mashak    {
34462ad42ecSRoman Mashak        "id": "1eb9",
34562ad42ecSRoman Mashak        "name": "Delete single ingress matchall filter out of multiple",
34662ad42ecSRoman Mashak        "category": [
34762ad42ecSRoman Mashak            "filter",
34862ad42ecSRoman Mashak            "matchall"
34962ad42ecSRoman Mashak        ],
35062ad42ecSRoman Mashak        "setup": [
351c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
352c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress",
353c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol all matchall classid 1:2 action pass",
354c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x2 prio 2 protocol all matchall classid 1:3 action pass",
355c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x3 prio 3 protocol all matchall classid 1:4 action pass",
356c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x4 prio 4 protocol all matchall classid 1:5 action pass"
35762ad42ecSRoman Mashak        ],
358c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter del dev $DUMMY parent ffff: protocol all handle 0x2 prio 2 matchall",
35962ad42ecSRoman Mashak        "expExitCode": "0",
360c11a99e7SVlad Buslov        "verifyCmd": "$TC filter show dev $DUMMY parent ffff:",
36162ad42ecSRoman Mashak        "matchPattern": "^filter protocol all pref 2 matchall.*handle 0x2 flowid 1:2.*gact action pass",
36262ad42ecSRoman Mashak        "matchCount": "0",
36362ad42ecSRoman Mashak        "teardown": [
364c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
365c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
36662ad42ecSRoman Mashak        ]
36762ad42ecSRoman Mashak    },
36862ad42ecSRoman Mashak    {
36962ad42ecSRoman Mashak        "id": "6d63",
37062ad42ecSRoman Mashak        "name": "Delete ingress matchall filter by chain ID",
37162ad42ecSRoman Mashak        "category": [
37262ad42ecSRoman Mashak            "filter",
37362ad42ecSRoman Mashak            "matchall"
37462ad42ecSRoman Mashak        ],
37562ad42ecSRoman Mashak        "setup": [
376c11a99e7SVlad Buslov            "$IP link add dev $DUMMY type dummy || /bin/true",
377c11a99e7SVlad Buslov            "$TC qdisc add dev $DUMMY ingress",
378c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol all chain 1 matchall classid 1:1 action pass",
379c11a99e7SVlad Buslov            "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv4 chain 2 matchall classid 1:3 action continue"
38062ad42ecSRoman Mashak        ],
381c11a99e7SVlad Buslov        "cmdUnderTest": "$TC filter del dev $DUMMY parent ffff: chain 2",
38262ad42ecSRoman Mashak        "expExitCode": "0",
383c11a99e7SVlad Buslov        "verifyCmd": "$TC filter show dev $DUMMY parent ffff:",
38462ad42ecSRoman Mashak        "matchPattern": "^filter protocol all pref 1 matchall chain 1 handle 0x1 flowid 1:1.*gact action pass",
38562ad42ecSRoman Mashak        "matchCount": "1",
38662ad42ecSRoman Mashak        "teardown": [
387c11a99e7SVlad Buslov            "$TC qdisc del dev $DUMMY ingress",
388c11a99e7SVlad Buslov            "$IP link del dev $DUMMY type dummy"
38962ad42ecSRoman Mashak        ]
390*eb473bacSBaowen Zheng    },
391*eb473bacSBaowen Zheng    {
392*eb473bacSBaowen Zheng        "id": "3329",
393*eb473bacSBaowen Zheng        "name": "Validate flags of the matchall filter with skip_sw and police action with skip_hw",
394*eb473bacSBaowen Zheng        "category": [
395*eb473bacSBaowen Zheng            "filter",
396*eb473bacSBaowen Zheng            "matchall"
397*eb473bacSBaowen Zheng        ],
398*eb473bacSBaowen Zheng        "setup": [
399*eb473bacSBaowen Zheng            "$IP link add dev $DUMMY type dummy || /bin/true",
400*eb473bacSBaowen Zheng            "$TC qdisc add dev $DUMMY ingress",
401*eb473bacSBaowen Zheng            "$TC actions flush action police",
402*eb473bacSBaowen Zheng            "$TC actions add action police rate 1mbit burst 100k index 199 skip_hw"
403*eb473bacSBaowen Zheng        ],
404*eb473bacSBaowen Zheng        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv4 matchall skip_sw action police index 199",
405*eb473bacSBaowen Zheng        "expExitCode": "2",
406*eb473bacSBaowen Zheng        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 1 protocol ipv4 matchall",
407*eb473bacSBaowen Zheng        "matchPattern": "^filter parent ffff: protocol ip pref 1 matchall.*handle 0x1.*",
408*eb473bacSBaowen Zheng        "matchCount": "0",
409*eb473bacSBaowen Zheng        "teardown": [
410*eb473bacSBaowen Zheng            "$TC qdisc del dev $DUMMY ingress",
411*eb473bacSBaowen Zheng            "$IP link del dev $DUMMY type dummy",
412*eb473bacSBaowen Zheng            "$TC actions del action police index 199"
413*eb473bacSBaowen Zheng        ]
414*eb473bacSBaowen Zheng    },
415*eb473bacSBaowen Zheng    {
416*eb473bacSBaowen Zheng        "id": "0eeb",
417*eb473bacSBaowen Zheng        "name": "Validate flags of the matchall filter with skip_hw and police action",
418*eb473bacSBaowen Zheng        "category": [
419*eb473bacSBaowen Zheng            "filter",
420*eb473bacSBaowen Zheng            "matchall"
421*eb473bacSBaowen Zheng        ],
422*eb473bacSBaowen Zheng        "setup": [
423*eb473bacSBaowen Zheng            "$IP link add dev $DUMMY type dummy || /bin/true",
424*eb473bacSBaowen Zheng            "$TC qdisc add dev $DUMMY ingress",
425*eb473bacSBaowen Zheng            "$TC actions flush action police",
426*eb473bacSBaowen Zheng            "$TC actions add action police rate 1mbit burst 100k index 199"
427*eb473bacSBaowen Zheng        ],
428*eb473bacSBaowen Zheng        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv4 matchall skip_hw action police index 199",
429*eb473bacSBaowen Zheng        "expExitCode": "2",
430*eb473bacSBaowen Zheng        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 1 protocol ipv4 matchall",
431*eb473bacSBaowen Zheng        "matchPattern": "^filter parent ffff: protocol ip pref 1 matchall.*handle 0x1.*",
432*eb473bacSBaowen Zheng        "matchCount": "0",
433*eb473bacSBaowen Zheng        "teardown": [
434*eb473bacSBaowen Zheng            "$TC qdisc del dev $DUMMY ingress",
435*eb473bacSBaowen Zheng            "$IP link del dev $DUMMY type dummy",
436*eb473bacSBaowen Zheng            "$TC actions del action police index 199"
437*eb473bacSBaowen Zheng        ]
438*eb473bacSBaowen Zheng    },
439*eb473bacSBaowen Zheng    {
440*eb473bacSBaowen Zheng        "id": "eee4",
441*eb473bacSBaowen Zheng        "name": "Validate flags of the matchall filter with skip_sw and police action",
442*eb473bacSBaowen Zheng        "category": [
443*eb473bacSBaowen Zheng            "filter",
444*eb473bacSBaowen Zheng            "matchall"
445*eb473bacSBaowen Zheng        ],
446*eb473bacSBaowen Zheng        "setup": [
447*eb473bacSBaowen Zheng            "$IP link add dev $DUMMY type dummy || /bin/true",
448*eb473bacSBaowen Zheng            "$TC qdisc add dev $DUMMY ingress",
449*eb473bacSBaowen Zheng            "$TC actions flush action police",
450*eb473bacSBaowen Zheng            "$TC actions add action police rate 1mbit burst 100k index 199"
451*eb473bacSBaowen Zheng        ],
452*eb473bacSBaowen Zheng        "cmdUnderTest": "$TC filter add dev $DUMMY parent ffff: handle 0x1 prio 1 protocol ipv4 matchall skip_sw action police index 199",
453*eb473bacSBaowen Zheng        "expExitCode": "2",
454*eb473bacSBaowen Zheng        "verifyCmd": "$TC filter get dev $DUMMY parent ffff: handle 1 prio 1 protocol ipv4 matchall",
455*eb473bacSBaowen Zheng        "matchPattern": "^filter parent ffff: protocol ip pref 1 matchall.*handle 0x1.*",
456*eb473bacSBaowen Zheng        "matchCount": "0",
457*eb473bacSBaowen Zheng        "teardown": [
458*eb473bacSBaowen Zheng            "$TC qdisc del dev $DUMMY ingress",
459*eb473bacSBaowen Zheng            "$IP link del dev $DUMMY type dummy",
460*eb473bacSBaowen Zheng            "$TC actions del action police index 199"
461*eb473bacSBaowen Zheng        ]
46262ad42ecSRoman Mashak    }
46362ad42ecSRoman Mashak]
464