4 "name": "Add vlan pop action with pipe opcode",
10 "requires": "nsPlugin"
14 "$TC actions flush action vlan",
20 "cmdUnderTest": "$TC actions add action vlan pop pipe index 8",
22 "verifyCmd": "$TC actions list action vlan",
23 "matchPattern": "action order [0-9]+: vlan.*pop.*pipe.*index 8 ref",
26 "$TC actions flush action vlan"
31 "name": "Add vlan pop action with pass opcode",
37 "requires": "nsPlugin"
41 "$TC actions flush action vlan",
47 "cmdUnderTest": "$TC actions add action vlan pop pass index 8",
49 "verifyCmd": "$TC actions get action vlan index 8",
50 "matchPattern": "action order [0-9]+: vlan.*pop.*pass.*index 8 ref",
53 "$TC actions flush action vlan"
58 "name": "Add vlan pop action with drop opcode",
64 "requires": "nsPlugin"
68 "$TC actions flush action vlan",
74 "cmdUnderTest": "$TC actions add action vlan pop drop index 8",
76 "verifyCmd": "$TC actions get action vlan index 8",
77 "matchPattern": "action order [0-9]+: vlan.*pop.*drop.*index 8 ref",
80 "$TC actions flush action vlan"
85 "name": "Add vlan pop action with reclassify opcode",
91 "requires": "nsPlugin"
95 "$TC actions flush action vlan",
101 "cmdUnderTest": "$TC actions add action vlan pop reclassify index 8",
103 "verifyCmd": "$TC actions get action vlan index 8",
104 "matchPattern": "action order [0-9]+: vlan.*pop.*reclassify.*index 8 ref",
107 "$TC actions flush action vlan"
112 "name": "Add vlan pop action with continue opcode",
118 "requires": "nsPlugin"
122 "$TC actions flush action vlan",
128 "cmdUnderTest": "$TC actions add action vlan pop continue index 8",
130 "verifyCmd": "$TC actions get action vlan index 8",
131 "matchPattern": "action order [0-9]+: vlan.*pop.*continue.*index 8 ref",
134 "$TC actions flush action vlan"
139 "name": "Add vlan pop action with jump opcode",
145 "requires": "nsPlugin"
149 "$TC actions flush action vlan",
155 "cmdUnderTest": "$TC actions add action vlan pop jump 10 index 8",
157 "verifyCmd": "$TC actions list action vlan",
158 "matchPattern": "action order [0-9]+: vlan.*jump 10.*index 8 ref",
161 "$TC actions flush action vlan"
166 "name": "Add vlan pop action with trap opcode",
172 "requires": "nsPlugin"
176 "$TC actions flush action vlan",
182 "cmdUnderTest": "$TC actions add action vlan pop trap index 8",
184 "verifyCmd": "$TC actions list action vlan",
185 "matchPattern": "action order [0-9]+: vlan.*pop trap.*index 8 ref",
188 "$TC actions flush action vlan"
193 "name": "Add vlan pop action with invalid opcode",
199 "requires": "nsPlugin"
203 "$TC actions flush action vlan",
209 "cmdUnderTest": "$TC actions add action vlan pop foo index 8",
210 "expExitCode": "255",
211 "verifyCmd": "$TC actions list action vlan",
212 "matchPattern": "action order [0-9]+: vlan.*pop.*foo.*index 8 ref",
218 "name": "Add vlan pop action with index at 32-bit maximum",
224 "requires": "nsPlugin"
228 "$TC actions flush action vlan",
234 "cmdUnderTest": "$TC actions add action vlan pop index 4294967295",
236 "verifyCmd": "$TC actions list action vlan",
237 "matchPattern": "action order [0-9]+: vlan.*pop.*index 4294967295 ref",
240 "$TC actions flush action vlan"
245 "name": "Add vlan pop action with index exceeding 32-bit maximum",
251 "requires": "nsPlugin"
255 "$TC actions flush action vlan",
261 "cmdUnderTest": "$TC actions add action vlan pop reclassify index 429496729599",
262 "expExitCode": "255",
263 "verifyCmd": "$TC actions get action vlan index 429496729599",
264 "matchPattern": "action order [0-9]+: vlan.*pop.reclassify.*index 429496729599",
270 "name": "Add vlan invalid action",
276 "requires": "nsPlugin"
280 "$TC actions flush action vlan",
286 "cmdUnderTest": "$TC actions add action vlan bad_mode",
287 "expExitCode": "255",
288 "verifyCmd": "$TC actions list action vlan",
289 "matchPattern": "action order [0-9]+: vlan.*bad_mode",
295 "name": "Add vlan push action with invalid protocol type",
301 "requires": "nsPlugin"
305 "$TC actions flush action vlan",
311 "cmdUnderTest": "$TC actions add action vlan push protocol ABCD",
312 "expExitCode": "255",
313 "verifyCmd": "$TC actions list action vlan",
314 "matchPattern": "action order [0-9]+: vlan.*push",
320 "name": "Add vlan push action with default protocol and priority",
326 "requires": "nsPlugin"
330 "$TC actions flush action vlan",
336 "cmdUnderTest": "$TC actions add action vlan push id 123 index 18",
338 "verifyCmd": "$TC actions get action vlan index 18",
339 "matchPattern": "action order [0-9]+: vlan.*push id 123 protocol 802.1Q priority 0 pipe.*index 18 ref",
342 "$TC actions flush action vlan"
347 "name": "Add vlan push action with protocol 802.1Q and priority 3",
353 "requires": "nsPlugin"
357 "$TC actions flush action vlan",
363 "cmdUnderTest": "$TC actions add action vlan push id 77 protocol 802.1Q priority 3 continue index 734",
365 "verifyCmd": "$TC actions get action vlan index 734",
366 "matchPattern": "action order [0-9]+: vlan.*push id 77 protocol 802.1Q priority 3 continue.*index 734 ref",
369 "$TC actions flush action vlan"
374 "name": "Add vlan push action with protocol 802.1AD",
380 "requires": "nsPlugin"
384 "$TC actions flush action vlan",
390 "cmdUnderTest": "$TC actions add action vlan push id 1024 protocol 802.1AD pass index 10000",
392 "verifyCmd": "$TC actions get action vlan index 10000",
393 "matchPattern": "action order [0-9]+: vlan.*push id 1024 protocol 802.1ad priority 0 pass.*index 10000 ref",
396 "$TC actions flush action vlan"
401 "name": "Add vlan push action with maximum 12-bit vlan ID",
407 "requires": "nsPlugin"
411 "$TC actions flush action vlan",
417 "cmdUnderTest": "$TC actions add action vlan push id 4094 index 1",
419 "verifyCmd": "$TC actions get action vlan index 1",
420 "matchPattern": "action order [0-9]+: vlan.*push id 4094.*protocol 802.1Q.*priority 0.*index 1 ref",
423 "$TC actions flush action vlan"
428 "name": "Add vlan push action with invalid vlan ID",
434 "requires": "nsPlugin"
438 "$TC actions flush action vlan",
444 "cmdUnderTest": "$TC actions add action vlan push id 5678 index 1",
445 "expExitCode": "255",
446 "verifyCmd": "$TC actions list action vlan",
447 "matchPattern": "action order [0-9]+: vlan.*push id 5678.*index 1 ref",
450 "$TC actions flush action vlan"
455 "name": "Add vlan push action with maximum 3-bit IEEE 802.1p priority",
461 "requires": "nsPlugin"
465 "$TC actions flush action vlan",
471 "cmdUnderTest": "$TC actions add action vlan push id 4 priority 7 reclassify index 1",
473 "verifyCmd": "$TC actions get action vlan index 1",
474 "matchPattern": "action order [0-9]+: vlan.*push id 4.*protocol 802.1Q.*priority 7.*reclassify.*index 1 ref",
477 "$TC actions flush action vlan"
482 "name": "Add vlan push action with invalid IEEE 802.1p priority",
488 "requires": "nsPlugin"
492 "$TC actions flush action vlan",
498 "cmdUnderTest": "$TC actions add action vlan push id 5 priority 10 index 1",
499 "expExitCode": "255",
500 "verifyCmd": "$TC actions list action vlan",
501 "matchPattern": "action order [0-9]+: vlan.*push id 5.*index 1 ref",
507 "name": "Add vlan modify action for protocol 802.1Q setting priority 0",
513 "requires": "nsPlugin"
517 "$TC actions flush action vlan",
523 "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1Q id 5 priority 0 index 100",
525 "verifyCmd": "$TC actions get action vlan index 100",
526 "matchPattern": "action order [0-9]+: vlan.*modify id 100 priority 0 protocol 802.1Q pipe.*index 100 ref",
529 "$TC actions flush action vlan"
534 "name": "Add vlan modify action for protocol 802.1Q",
540 "requires": "nsPlugin"
544 "$TC actions flush action vlan",
550 "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1Q id 5 index 100",
552 "verifyCmd": "$TC actions get action vlan index 100",
553 "matchPattern": "action order [0-9]+: vlan.*modify id 100 protocol 802.1Q pipe.*index 100 ref",
556 "$TC actions flush action vlan"
561 "name": "Add vlan modify action for protocol 802.1AD",
567 "requires": "nsPlugin"
571 "$TC actions flush action vlan",
577 "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1ad id 500 reclassify index 12",
579 "verifyCmd": "$TC actions get action vlan index 12",
580 "matchPattern": "action order [0-9]+: vlan.*modify id 500 protocol 802.1ad reclassify.*index 12 ref",
583 "$TC actions flush action vlan"
588 "name": "Replace existing vlan push action with new ID",
594 "requires": "nsPlugin"
598 "$TC actions flush action vlan",
603 "$TC actions add action vlan push id 500 pipe index 12"
605 "cmdUnderTest": "$TC actions replace action vlan push id 700 pipe index 12",
607 "verifyCmd": "$TC actions get action vlan index 12",
608 "matchPattern": "action order [0-9]+: vlan.*push id 700 protocol 802.1Q priority 0 pipe.*index 12 ref",
611 "$TC actions flush action vlan"
616 "name": "Replace existing vlan push action with new protocol",
622 "requires": "nsPlugin"
626 "$TC actions flush action vlan",
631 "$TC actions add action vlan push id 1 protocol 802.1Q pipe index 1"
633 "cmdUnderTest": "$TC actions replace action vlan push id 1 protocol 802.1ad pipe index 1",
635 "verifyCmd": "$TC actions get action vlan index 1",
636 "matchPattern": "action order [0-9]+: vlan.*push id 1 protocol 802.1ad priority 0 pipe.*index 1 ref",
639 "$TC actions flush action vlan"
644 "name": "Replace existing vlan push action with new priority",
650 "requires": "nsPlugin"
654 "$TC actions flush action vlan",
659 "$TC actions add action vlan push id 1 protocol 802.1Q priority 3 reclassify index 1"
661 "cmdUnderTest": "$TC actions replace action vlan push id 1 priority 4 reclassify index 1",
663 "verifyCmd": "$TC actions get action vlan index 1",
664 "matchPattern": "action order [0-9]+: vlan.*push id 1 protocol 802.1Q priority 4 reclassify.*index 1 ref",
667 "$TC actions flush action vlan"
672 "name": "Replace existing vlan pop action with new cookie",
678 "requires": "nsPlugin"
682 "$TC actions flush action vlan",
687 "$TC actions add action vlan pop continue index 1 cookie 22334455"
689 "cmdUnderTest": "$TC actions replace action vlan pop continue index 1 cookie a1b1c2d1",
691 "verifyCmd": "$TC actions get action vlan index 1",
692 "matchPattern": "action order [0-9]+: vlan.*pop continue.*index 1 ref.*cookie a1b1c2d1",
695 "$TC actions flush action vlan"
700 "name": "Delete vlan pop action",
706 "requires": "nsPlugin"
710 "$TC actions flush action vlan",
715 "$TC actions add action vlan pop index 44"
717 "cmdUnderTest": "$TC actions del action vlan index 44",
719 "verifyCmd": "$TC actions list action vlan",
720 "matchPattern": "action order [0-9]+: vlan.*pop.*index 44 ref",
726 "name": "Delete vlan push action for protocol 802.1Q",
732 "requires": "nsPlugin"
736 "$TC actions flush action vlan",
741 "$TC actions add action vlan push id 4094 protocol 802.1Q index 999"
743 "cmdUnderTest": "$TC actions del action vlan index 999",
745 "verifyCmd": "$TC actions list action vlan",
746 "matchPattern": "action order [0-9]+: vlan.*push id 4094 protocol 802.1Q priority 0 pipe.*index 999 ref",
752 "name": "Flush vlan actions",
758 "requires": "nsPlugin"
762 "$TC actions flush action vlan",
767 "$TC actions add action vlan push id 4 protocol 802.1ad index 10",
768 "$TC actions add action vlan push id 4 protocol 802.1ad index 11",
769 "$TC actions add action vlan push id 4 protocol 802.1ad index 12",
770 "$TC actions add action vlan push id 4 protocol 802.1ad index 13"
772 "cmdUnderTest": "$TC actions flush action vlan",
774 "verifyCmd": "$TC actions list action vlan",
775 "matchPattern": "action order [0-9]+: vlan.*push id 4 protocol 802.1ad",
781 "name": "Add vlan push action with cookie",
787 "requires": "nsPlugin"
791 "$TC actions flush action vlan",
797 "cmdUnderTest": "$TC actions add action vlan push id 4 cookie a0a0a0a0a0a0a0",
799 "verifyCmd": "$TC actions list action vlan",
800 "matchPattern": "action order [0-9]+: vlan.*push id 4.*cookie a0a0a0a0a0a0a0",
803 "$TC actions flush action vlan"
808 "name": "Replace vlan push action with invalid goto chain control",
814 "requires": "nsPlugin"
818 "$TC actions flush action vlan",
823 "$TC actions add action vlan push id 500 pass index 90"
825 "cmdUnderTest": "$TC actions replace action vlan push id 500 goto chain 42 index 90 cookie c1a0c1a0",
826 "expExitCode": "255",
827 "verifyCmd": "$TC actions get action vlan index 90",
828 "matchPattern": "action order [0-9]+: vlan.*push id 500 protocol 802.1Q priority 0 pass.*index 90 ref",
831 "$TC actions flush action vlan"
836 "name": "Add batch of 32 vlan push actions with cookie",
842 "requires": "nsPlugin"
846 "$TC actions flush action vlan",
852 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan push protocol 802.1q id 4094 priority 7 pipe index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"",
854 "verifyCmd": "$TC actions list action vlan",
855 "matchPattern": "^[ \t]+index [0-9]+ ref",
858 "$TC actions flush action vlan"
863 "name": "Delete batch of 32 vlan push actions",
869 "requires": "nsPlugin"
873 "$TC actions flush action vlan",
878 "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan push protocol 802.1q id 4094 priority 7 pipe index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\""
880 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"",
882 "verifyCmd": "$TC actions list action vlan",
883 "matchPattern": "^[ \t]+index [0-9]+ ref",
889 "name": "Add batch of 32 vlan pop actions with cookie",
895 "requires": "nsPlugin"
899 "$TC actions flush action vlan",
905 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan pop continue index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"",
907 "verifyCmd": "$TC actions list action vlan",
908 "matchPattern": "^[ \t]+index [0-9]+ ref",
911 "$TC actions flush action vlan"
916 "name": "Delete batch of 32 vlan pop actions",
922 "requires": "nsPlugin"
926 "$TC actions flush action vlan",
931 "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan pop index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\""
933 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action vlan index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"",
935 "verifyCmd": "$TC actions list action vlan",
936 "matchPattern": "^[ \t]+index [0-9]+ ref",
942 "name": "Add vlan pop action with no_percpu flag",
948 "requires": "nsPlugin"
952 "$TC actions flush action vlan",
958 "cmdUnderTest": "$TC actions add action vlan pop no_percpu",
960 "verifyCmd": "$TC actions list action vlan",
961 "matchPattern": "action order [0-9]+: vlan.*pop.*no_percpu",
964 "$TC actions flush action vlan"