1[
2    {
3        "id": "5294",
4        "name": "Add flow filter with map key and ops",
5        "category": [
6            "filter",
7            "flow"
8        ],
9        "plugins": {
10            "requires": "nsPlugin"
11        },
12        "setup": [
13            "$TC qdisc add dev $DEV1 ingress"
14        ],
15        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key dst and 0xff",
16        "expExitCode": "0",
17        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
18        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst and 0x000000ff baseclass",
19        "matchCount": "1",
20        "teardown": [
21            "$TC qdisc del dev $DEV1 ingress"
22        ]
23    },
24    {
25        "id": "3514",
26        "name": "Add flow filter with map key or ops",
27        "category": [
28            "filter",
29            "flow"
30        ],
31        "plugins": {
32            "requires": "nsPlugin"
33        },
34        "setup": [
35            "$TC qdisc add dev $DEV1 ingress"
36        ],
37        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key dst or 0xff",
38        "expExitCode": "0",
39        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
40        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst.*or 0x000000ff baseclass",
41        "matchCount": "1",
42        "teardown": [
43            "$TC qdisc del dev $DEV1 ingress"
44        ]
45    },
46    {
47        "id": "7534",
48        "name": "Add flow filter with map key xor ops",
49        "category": [
50            "filter",
51            "flow"
52        ],
53        "plugins": {
54            "requires": "nsPlugin"
55        },
56        "setup": [
57            "$TC qdisc add dev $DEV1 ingress"
58        ],
59        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key dst xor 0xff",
60        "expExitCode": "0",
61        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
62        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst xor 0x000000ff baseclass",
63        "matchCount": "1",
64        "teardown": [
65            "$TC qdisc del dev $DEV1 ingress"
66        ]
67    },
68    {
69        "id": "4524",
70        "name": "Add flow filter with map key rshift ops",
71        "category": [
72            "filter",
73            "flow"
74        ],
75        "plugins": {
76            "requires": "nsPlugin"
77        },
78        "setup": [
79            "$TC qdisc add dev $DEV1 ingress"
80        ],
81        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key dst rshift 0xff",
82        "expExitCode": "0",
83        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
84        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst rshift 255 baseclass",
85        "matchCount": "1",
86        "teardown": [
87            "$TC qdisc del dev $DEV1 ingress"
88        ]
89    },
90    {
91        "id": "0230",
92        "name": "Add flow filter with map key addend ops",
93        "category": [
94            "filter",
95            "flow"
96        ],
97        "plugins": {
98            "requires": "nsPlugin"
99        },
100        "setup": [
101            "$TC qdisc add dev $DEV1 ingress"
102        ],
103        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key dst addend 0xff",
104        "expExitCode": "0",
105        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
106        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst addend 0xff baseclass",
107        "matchCount": "1",
108        "teardown": [
109            "$TC qdisc del dev $DEV1 ingress"
110        ]
111    },
112    {
113        "id": "2344",
114        "name": "Add flow filter with src map key",
115        "category": [
116            "filter",
117            "flow"
118        ],
119        "plugins": {
120            "requires": "nsPlugin"
121        },
122        "setup": [
123            "$TC qdisc add dev $DEV1 ingress"
124        ],
125        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key src addend 0xff",
126        "expExitCode": "0",
127        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
128        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys src addend 0xff baseclass",
129        "matchCount": "1",
130        "teardown": [
131            "$TC qdisc del dev $DEV1 ingress"
132        ]
133    },
134    {
135        "id": "9304",
136        "name": "Add flow filter with proto map key",
137        "category": [
138            "filter",
139            "flow"
140        ],
141        "plugins": {
142            "requires": "nsPlugin"
143        },
144        "setup": [
145            "$TC qdisc add dev $DEV1 ingress"
146        ],
147        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key proto addend 0xff",
148        "expExitCode": "0",
149        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
150        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys proto addend 0xff baseclass",
151        "matchCount": "1",
152        "teardown": [
153            "$TC qdisc del dev $DEV1 ingress"
154        ]
155    },
156    {
157        "id": "9038",
158        "name": "Add flow filter with proto-src map key",
159        "category": [
160            "filter",
161            "flow"
162        ],
163        "plugins": {
164            "requires": "nsPlugin"
165        },
166        "setup": [
167            "$TC qdisc add dev $DEV1 ingress"
168        ],
169        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key proto-src addend 0xff",
170        "expExitCode": "0",
171        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
172        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys proto-src addend 0xff baseclass",
173        "matchCount": "1",
174        "teardown": [
175            "$TC qdisc del dev $DEV1 ingress"
176        ]
177    },
178    {
179        "id": "2a03",
180        "name": "Add flow filter with proto-dst map key",
181        "category": [
182            "filter",
183            "flow"
184        ],
185        "plugins": {
186            "requires": "nsPlugin"
187        },
188        "setup": [
189            "$TC qdisc add dev $DEV1 ingress"
190        ],
191        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key proto-dst addend 0xff",
192        "expExitCode": "0",
193        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
194        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys proto-dst addend 0xff baseclass",
195        "matchCount": "1",
196        "teardown": [
197            "$TC qdisc del dev $DEV1 ingress"
198        ]
199    },
200    {
201        "id": "a073",
202        "name": "Add flow filter with iif map key",
203        "category": [
204            "filter",
205            "flow"
206        ],
207        "plugins": {
208            "requires": "nsPlugin"
209        },
210        "setup": [
211            "$TC qdisc add dev $DEV1 ingress"
212        ],
213        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key iif addend 0xff",
214        "expExitCode": "0",
215        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
216        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys iif addend 0xff baseclass",
217        "matchCount": "1",
218        "teardown": [
219            "$TC qdisc del dev $DEV1 ingress"
220        ]
221    },
222    {
223        "id": "3b20",
224        "name": "Add flow filter with priority map key",
225        "category": [
226            "filter",
227            "flow"
228        ],
229        "plugins": {
230            "requires": "nsPlugin"
231        },
232        "setup": [
233            "$TC qdisc add dev $DEV1 ingress"
234        ],
235        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key priority addend 0xff",
236        "expExitCode": "0",
237        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
238        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys priority addend 0xff baseclass",
239        "matchCount": "1",
240        "teardown": [
241            "$TC qdisc del dev $DEV1 ingress"
242        ]
243    },
244    {
245        "id": "8945",
246        "name": "Add flow filter with mark map key",
247        "category": [
248            "filter",
249            "flow"
250        ],
251        "plugins": {
252            "requires": "nsPlugin"
253        },
254        "setup": [
255            "$TC qdisc add dev $DEV1 ingress"
256        ],
257        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key mark addend 0xff",
258        "expExitCode": "0",
259        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
260        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys mark addend 0xff baseclass",
261        "matchCount": "1",
262        "teardown": [
263            "$TC qdisc del dev $DEV1 ingress"
264        ]
265    },
266    {
267        "id": "c034",
268        "name": "Add flow filter with nfct map key",
269        "category": [
270            "filter",
271            "flow"
272        ],
273        "plugins": {
274            "requires": "nsPlugin"
275        },
276        "setup": [
277            "$TC qdisc add dev $DEV1 ingress"
278        ],
279        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key nfct addend 0xff",
280        "expExitCode": "0",
281        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
282        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys nfct addend 0xff baseclass",
283        "matchCount": "1",
284        "teardown": [
285            "$TC qdisc del dev $DEV1 ingress"
286        ]
287    },
288    {
289        "id": "0205",
290        "name": "Add flow filter with nfct-src map key",
291        "category": [
292            "filter",
293            "flow"
294        ],
295        "plugins": {
296            "requires": "nsPlugin"
297        },
298        "setup": [
299            "$TC qdisc add dev $DEV1 ingress"
300        ],
301        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key nfct-dst addend 0xff",
302        "expExitCode": "0",
303        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
304        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys nfct-dst addend 0xff baseclass",
305        "matchCount": "1",
306        "teardown": [
307            "$TC qdisc del dev $DEV1 ingress"
308        ]
309    },
310    {
311        "id": "5315",
312        "name": "Add flow filter with nfct-src map key",
313        "category": [
314            "filter",
315            "flow"
316        ],
317        "plugins": {
318            "requires": "nsPlugin"
319        },
320        "setup": [
321            "$TC qdisc add dev $DEV1 ingress"
322        ],
323        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key nfct-src addend 0xff",
324        "expExitCode": "0",
325        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
326        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys nfct-src addend 0xff baseclass",
327        "matchCount": "1",
328        "teardown": [
329            "$TC qdisc del dev $DEV1 ingress"
330        ]
331    },
332    {
333        "id": "7849",
334        "name": "Add flow filter with nfct-proto-src map key",
335        "category": [
336            "filter",
337            "flow"
338        ],
339        "plugins": {
340            "requires": "nsPlugin"
341        },
342        "setup": [
343            "$TC qdisc add dev $DEV1 ingress"
344        ],
345        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key nfct-proto-src addend 0xff",
346        "expExitCode": "0",
347        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
348        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys nfct-proto-src addend 0xff baseclass",
349        "matchCount": "1",
350        "teardown": [
351            "$TC qdisc del dev $DEV1 ingress"
352        ]
353    },
354    {
355        "id": "9902",
356        "name": "Add flow filter with nfct-proto-dst map key",
357        "category": [
358            "filter",
359            "flow"
360        ],
361        "plugins": {
362            "requires": "nsPlugin"
363        },
364        "setup": [
365            "$TC qdisc add dev $DEV1 ingress"
366        ],
367        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key nfct-proto-dst addend 0xff",
368        "expExitCode": "0",
369        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
370        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys nfct-proto-dst addend 0xff baseclass",
371        "matchCount": "1",
372        "teardown": [
373            "$TC qdisc del dev $DEV1 ingress"
374        ]
375    },
376    {
377        "id": "6742",
378        "name": "Add flow filter with rt-classid map key",
379        "category": [
380            "filter",
381            "flow"
382        ],
383        "plugins": {
384            "requires": "nsPlugin"
385        },
386        "setup": [
387            "$TC qdisc add dev $DEV1 ingress"
388        ],
389        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rt-classid addend 0xff",
390        "expExitCode": "0",
391        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
392        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys rt-classid addend 0xff baseclass",
393        "matchCount": "1",
394        "teardown": [
395            "$TC qdisc del dev $DEV1 ingress"
396        ]
397    },
398    {
399        "id": "5432",
400        "name": "Add flow filter with sk-uid map key",
401        "category": [
402            "filter",
403            "flow"
404        ],
405        "plugins": {
406            "requires": "nsPlugin"
407        },
408        "setup": [
409            "$TC qdisc add dev $DEV1 ingress"
410        ],
411        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key sk-uid addend 0xff",
412        "expExitCode": "0",
413        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
414        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys sk-uid addend 0xff baseclass",
415        "matchCount": "1",
416        "teardown": [
417            "$TC qdisc del dev $DEV1 ingress"
418        ]
419    },
420    {
421        "id": "4134",
422        "name": "Add flow filter with sk-gid map key",
423        "category": [
424            "filter",
425            "flow"
426        ],
427        "plugins": {
428            "requires": "nsPlugin"
429        },
430        "setup": [
431            "$TC qdisc add dev $DEV1 ingress"
432        ],
433        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key sk-gid addend 0xff",
434        "expExitCode": "0",
435        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
436        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys sk-gid addend 0xff baseclass",
437        "matchCount": "1",
438        "teardown": [
439            "$TC qdisc del dev $DEV1 ingress"
440        ]
441    },
442    {
443        "id": "4522",
444        "name": "Add flow filter with vlan-tag map key",
445        "category": [
446            "filter",
447            "flow"
448        ],
449        "plugins": {
450            "requires": "nsPlugin"
451        },
452        "setup": [
453            "$TC qdisc add dev $DEV1 ingress"
454        ],
455        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key vlan-tag addend 0xff",
456        "expExitCode": "0",
457        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
458        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys vlan-tag addend 0xff baseclass",
459        "matchCount": "1",
460        "teardown": [
461            "$TC qdisc del dev $DEV1 ingress"
462        ]
463    },
464    {
465        "id": "4253",
466        "name": "Add flow filter with rxhash map key",
467        "category": [
468            "filter",
469            "flow"
470        ],
471        "plugins": {
472            "requires": "nsPlugin"
473        },
474        "setup": [
475            "$TC qdisc add dev $DEV1 ingress"
476        ],
477        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0xff",
478        "expExitCode": "0",
479        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
480        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys rxhash addend 0xff baseclass",
481        "matchCount": "1",
482        "teardown": [
483            "$TC qdisc del dev $DEV1 ingress"
484        ]
485    },
486    {
487        "id": "4452",
488        "name": "Add flow filter with hash key list",
489        "category": [
490            "filter",
491            "flow"
492        ],
493        "plugins": {
494            "requires": "nsPlugin"
495        },
496        "setup": [
497            "$TC qdisc add dev $DEV1 ingress"
498        ],
499        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow hash keys src",
500        "expExitCode": "0",
501        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
502        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 hash keys src baseclass",
503        "matchCount": "1",
504        "teardown": [
505            "$TC qdisc del dev $DEV1 ingress"
506        ]
507    },
508    {
509        "id": "4341",
510        "name": "Add flow filter with muliple ops",
511        "category": [
512            "filter",
513            "flow"
514        ],
515        "plugins": {
516            "requires": "nsPlugin"
517        },
518        "setup": [
519            "$TC qdisc add dev $DEV1 ingress"
520        ],
521        "cmdUnderTest": "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow hash keys src divisor 1024 baseclass 1:1 match 'cmp(u8 at 0 layer link mask 0xff gt 10)' action drop",
522        "expExitCode": "0",
523        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 protocol ip prio 1 flow",
524        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 hash keys src divisor 1024 baseclass 1:1.*cmp\\(u8 at 0 layer 0 mask 0xff gt 10\\)",
525        "matchCount": "1",
526        "teardown": [
527            "$TC qdisc del dev $DEV1 ingress"
528        ]
529    },
530    {
531        "id": "4392",
532        "name": "List flow filters",
533        "category": [
534            "filter",
535            "flow"
536        ],
537        "plugins": {
538            "requires": "nsPlugin"
539        },
540        "setup": [
541            "$TC qdisc add dev $DEV1 ingress",
542            "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0xff",
543            "$TC filter add dev $DEV1 parent ffff: handle 2 prio 1 protocol ip flow map key rxhash or 0xff"
544        ],
545        "cmdUnderTest": "$TC filter show dev $DEV1 parent ffff:",
546        "expExitCode": "0",
547        "verifyCmd": "$TC filter show dev $DEV1 parent ffff:",
548        "matchPattern": "filter protocol ip pref 1 flow chain 0 handle 0x[0-9]+ map keys rxhash",
549        "matchCount": "2",
550        "teardown": [
551            "$TC qdisc del dev $DEV1 ingress"
552        ]
553    },
554    {
555        "id": "4322",
556        "name": "Change flow filter with map key num",
557        "category": [
558            "filter",
559            "flow"
560        ],
561        "plugins": {
562            "requires": "nsPlugin"
563        },
564        "setup": [
565            "$TC qdisc add dev $DEV1 ingress",
566            "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0xff"
567        ],
568        "cmdUnderTest": "$TC filter change dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0x22",
569        "expExitCode": "0",
570        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow",
571        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys rxhash addend 0x22 baseclass",
572        "matchCount": "1",
573        "teardown": [
574            "$TC qdisc del dev $DEV1 ingress"
575        ]
576    },
577    {
578        "id": "2320",
579        "name": "Replace flow filter with map key num",
580        "category": [
581            "filter",
582            "flow"
583        ],
584        "plugins": {
585            "requires": "nsPlugin"
586        },
587        "setup": [
588            "$TC qdisc add dev $DEV1 ingress",
589            "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0xff"
590        ],
591        "cmdUnderTest": "$TC filter replace dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0x88",
592        "expExitCode": "0",
593        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow",
594        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys rxhash addend 0x88 baseclass",
595        "matchCount": "1",
596        "teardown": [
597            "$TC qdisc del dev $DEV1 ingress"
598        ]
599    },
600    {
601        "id": "3213",
602        "name": "Delete flow filter with map key num",
603        "category": [
604            "filter",
605            "flow"
606        ],
607        "plugins": {
608            "requires": "nsPlugin"
609        },
610        "setup": [
611            "$TC qdisc add dev $DEV1 ingress",
612            "$TC filter add dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0xff"
613        ],
614        "cmdUnderTest": "$TC filter delete dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow map key rxhash addend 0xff",
615        "expExitCode": "0",
616        "verifyCmd": "$TC filter get dev $DEV1 parent ffff: handle 1 prio 1 protocol ip flow",
617        "matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys rxhash addend 0x88 baseclass",
618        "matchCount": "0",
619        "teardown": [
620            "$TC qdisc del dev $DEV1 ingress"
621        ]
622    }
623]
624