766 lines · json
1[2 {3 "id": "e89a",4 "name": "Add valid pass action",5 "category": [6 "actions",7 "gact"8 ],9 "plugins": {10 "requires": "nsPlugin"11 },12 "setup": [13 [14 "$TC actions flush action gact",15 0,16 1,17 25518 ]19 ],20 "cmdUnderTest": "$TC actions add action pass index 8",21 "expExitCode": "0",22 "verifyCmd": "$TC actions list action gact",23 "matchPattern": "action order [0-9]*: gact action pass.*index 8 ref",24 "matchCount": "1",25 "teardown": [26 "$TC actions flush action gact"27 ]28 },29 {30 "id": "a02c",31 "name": "Add valid pipe action",32 "category": [33 "actions",34 "gact"35 ],36 "plugins": {37 "requires": "nsPlugin"38 },39 "setup": [40 [41 "$TC actions flush action gact",42 0,43 1,44 25545 ]46 ],47 "cmdUnderTest": "$TC actions add action pipe index 6",48 "expExitCode": "0",49 "verifyCmd": "$TC actions list action gact",50 "matchPattern": "action order [0-9]*: gact action pipe.*index 6 ref",51 "matchCount": "1",52 "teardown": [53 "$TC actions flush action gact"54 ]55 },56 {57 "id": "feef",58 "name": "Add valid reclassify action",59 "category": [60 "actions",61 "gact"62 ],63 "plugins": {64 "requires": "nsPlugin"65 },66 "setup": [67 [68 "$TC actions flush action gact",69 0,70 1,71 25572 ]73 ],74 "cmdUnderTest": "$TC actions add action reclassify index 5",75 "expExitCode": "0",76 "verifyCmd": "$TC actions list action gact",77 "matchPattern": "action order [0-9]*: gact action reclassify.*index 5 ref",78 "matchCount": "1",79 "teardown": [80 "$TC actions flush action gact"81 ]82 },83 {84 "id": "8a7a",85 "name": "Add valid drop action",86 "category": [87 "actions",88 "gact"89 ],90 "plugins": {91 "requires": "nsPlugin"92 },93 "setup": [94 [95 "$TC actions flush action gact",96 0,97 1,98 25599 ]100 ],101 "cmdUnderTest": "$TC actions add action drop index 30",102 "expExitCode": "0",103 "verifyCmd": "$TC actions list action gact",104 "matchPattern": "action order [0-9]*: gact action drop.*index 30 ref",105 "matchCount": "1",106 "teardown": [107 "$TC actions flush action gact"108 ]109 },110 {111 "id": "9a52",112 "name": "Add valid continue action",113 "category": [114 "actions",115 "gact"116 ],117 "plugins": {118 "requires": "nsPlugin"119 },120 "setup": [121 [122 "$TC actions flush action gact",123 0,124 1,125 255126 ]127 ],128 "cmdUnderTest": "$TC actions add action continue index 432",129 "expExitCode": "0",130 "verifyCmd": "$TC actions list action gact",131 "matchPattern": "action order [0-9]*: gact action continue.*index 432 ref",132 "matchCount": "1",133 "teardown": [134 "$TC actions flush action gact"135 ]136 },137 {138 "id": "d700",139 "name": "Add invalid action",140 "category": [141 "actions",142 "gact"143 ],144 "plugins": {145 "requires": "nsPlugin"146 },147 "setup": [148 [149 "$TC actions flush action gact",150 0,151 1,152 255153 ]154 ],155 "cmdUnderTest": "$TC actions add action pump index 386",156 "expExitCode": "255",157 "verifyCmd": "$TC actions list action gact",158 "matchPattern": "action order [0-9]*: gact action.*index 386 ref",159 "matchCount": "0",160 "teardown": [161 "$TC actions flush action gact"162 ]163 },164 {165 "id": "9215",166 "name": "Add action with duplicate index",167 "category": [168 "actions",169 "gact"170 ],171 "plugins": {172 "requires": "nsPlugin"173 },174 "setup": [175 [176 "$TC actions flush action gact",177 0,178 1,179 255180 ],181 "$TC actions add action pipe index 15"182 ],183 "cmdUnderTest": "$TC actions add action drop index 15",184 "expExitCode": "255",185 "verifyCmd": "$TC actions list action gact",186 "matchPattern": "action order [0-9]*: gact action drop.*index 15 ref",187 "matchCount": "0",188 "teardown": [189 "$TC actions flush action gact"190 ]191 },192 {193 "id": "798e",194 "name": "Add action with index exceeding 32-bit maximum",195 "category": [196 "actions",197 "gact"198 ],199 "plugins": {200 "requires": "nsPlugin"201 },202 "setup": [203 [204 "$TC actions flush action gact",205 0,206 1,207 255208 ]209 ],210 "cmdUnderTest": "$TC actions add action drop index 4294967296",211 "expExitCode": "255",212 "verifyCmd": "actions list action gact",213 "matchPattern": "action order [0-9]*: gact action drop.*index 4294967296 ref",214 "matchCount": "0",215 "teardown": [216 "$TC actions flush action gact"217 ]218 },219 {220 "id": "22be",221 "name": "Add action with index at 32-bit maximum",222 "category": [223 "actions",224 "gact"225 ],226 "plugins": {227 "requires": "nsPlugin"228 },229 "setup": [230 [231 "$TC actions flush action gact",232 0,233 1,234 255235 ]236 ],237 "cmdUnderTest": "$TC actions add action drop index 4294967295",238 "expExitCode": "0",239 "verifyCmd": "$TC actions list action gact",240 "matchPattern": "action order [0-9]*: gact action drop.*index 4294967295 ref",241 "matchCount": "1",242 "teardown": [243 "$TC actions flush action gact"244 ]245 },246 {247 "id": "ac2a",248 "name": "List actions",249 "category": [250 "actions",251 "gact"252 ],253 "plugins": {254 "requires": "nsPlugin"255 },256 "setup": [257 [258 "$TC actions flush action gact",259 0,260 1,261 255262 ],263 "$TC actions add action reclassify index 101",264 "$TC actions add action reclassify index 102",265 "$TC actions add action reclassify index 103",266 "$TC actions add action reclassify index 104",267 "$TC actions add action reclassify index 105"268 ],269 "cmdUnderTest": "$TC actions list action gact",270 "expExitCode": "0",271 "verifyCmd": "$TC actions list action gact",272 "matchPattern": "action order [0-9]*: gact action reclassify",273 "matchCount": "5",274 "teardown": [275 "$TC actions flush action gact"276 ]277 },278 {279 "id": "3edf",280 "name": "Flush gact actions",281 "category": [282 "actions",283 "gact"284 ],285 "plugins": {286 "requires": "nsPlugin"287 },288 "setup": [289 "$TC actions add action reclassify index 101",290 "$TC actions add action reclassify index 102",291 "$TC actions add action reclassify index 103",292 "$TC actions add action reclassify index 104",293 "$TC actions add action reclassify index 105"294 ],295 "cmdUnderTest": "$TC actions flush action gact",296 "expExitCode": "0",297 "verifyCmd": "$TC actions list action gact",298 "matchPattern": "action order [0-9]*: gact action reclassify",299 "matchCount": "0",300 "teardown": []301 },302 {303 "id": "63ec",304 "name": "Delete pass action",305 "category": [306 "actions",307 "gact"308 ],309 "plugins": {310 "requires": "nsPlugin"311 },312 "setup": [313 [314 "$TC actions flush action gact",315 0,316 1,317 255318 ],319 "$TC actions add action pass index 1"320 ],321 "cmdUnderTest": "$TC actions del action gact index 1",322 "expExitCode": "0",323 "verifyCmd": "$TC actions list action gact",324 "matchPattern": "action order [0-9]*: gact action pass.*index 1 ref",325 "matchCount": "0",326 "teardown": [327 "$TC actions flush action gact"328 ]329 },330 {331 "id": "46be",332 "name": "Delete pipe action",333 "category": [334 "actions",335 "gact"336 ],337 "plugins": {338 "requires": "nsPlugin"339 },340 "setup": [341 [342 "$TC actions flush action gact",343 0,344 1,345 255346 ],347 "$TC actions add action pipe index 9"348 ],349 "cmdUnderTest": "$TC actions del action gact index 9",350 "expExitCode": "0",351 "verifyCmd": "$TC actions list action gact",352 "matchPattern": "action order [0-9]*: gact action pipe.*index 9 ref",353 "matchCount": "0",354 "teardown": [355 "$TC actions flush action gact"356 ]357 },358 {359 "id": "2e08",360 "name": "Delete reclassify action",361 "category": [362 "actions",363 "gact"364 ],365 "plugins": {366 "requires": "nsPlugin"367 },368 "setup": [369 [370 "$TC actions flush action gact",371 0,372 1,373 255374 ],375 "$TC actions add action reclassify index 65536"376 ],377 "cmdUnderTest": "$TC actions del action gact index 65536",378 "expExitCode": "0",379 "verifyCmd": "$TC actions list action gact",380 "matchPattern": "action order [0-9]*: gact action reclassify.*index 65536 ref",381 "matchCount": "0",382 "teardown": [383 "$TC actions flush action gact"384 ]385 },386 {387 "id": "99c4",388 "name": "Delete drop action",389 "category": [390 "actions",391 "gact"392 ],393 "plugins": {394 "requires": "nsPlugin"395 },396 "setup": [397 [398 "$TC actions flush action gact",399 0,400 1,401 255402 ],403 "$TC actions add action drop index 16"404 ],405 "cmdUnderTest": "$TC actions del action gact index 16",406 "expExitCode": "0",407 "verifyCmd": "$TC actions list action gact",408 "matchPattern": "action order [0-9]*: gact action drop.*index 16 ref",409 "matchCount": "0",410 "teardown": [411 "$TC actions flush action gact"412 ]413 },414 {415 "id": "fb6b",416 "name": "Delete continue action",417 "category": [418 "actions",419 "gact"420 ],421 "plugins": {422 "requires": "nsPlugin"423 },424 "setup": [425 [426 "$TC actions flush action gact",427 0,428 1,429 255430 ],431 "$TC actions add action continue index 32"432 ],433 "cmdUnderTest": "$TC actions del action gact index 32",434 "expExitCode": "0",435 "verifyCmd": "actions list action gact",436 "matchPattern": "action order [0-9]*: gact action continue.*index 32 ref",437 "matchCount": "0",438 "teardown": [439 "$TC actions flush action gact"440 ]441 },442 {443 "id": "0eb3",444 "name": "Delete non-existent action",445 "category": [446 "actions",447 "gact"448 ],449 "plugins": {450 "requires": "nsPlugin"451 },452 "setup": [453 [454 "$TC actions flush action gact",455 0,456 1,457 255458 ]459 ],460 "cmdUnderTest": "$TC actions del action gact index 2",461 "expExitCode": "255",462 "verifyCmd": "$TC actions list action gact",463 "matchPattern": "action order [0-9]*: gact action",464 "matchCount": "0",465 "teardown": [466 "$TC actions flush action gact"467 ]468 },469 {470 "id": "f02c",471 "name": "Replace gact action",472 "category": [473 "actions",474 "gact"475 ],476 "plugins": {477 "requires": "nsPlugin"478 },479 "setup": [480 [481 "$TC actions flush action gact",482 0,483 1,484 255485 ],486 "$TC actions add action drop index 10",487 "$TC actions add action drop index 12"488 ],489 "cmdUnderTest": "$TC actions replace action ok index 12",490 "expExitCode": "0",491 "verifyCmd": "$TC actions ls action gact",492 "matchPattern": "action order [0-9]*: gact action pass",493 "matchCount": "1",494 "teardown": [495 "$TC actions flush action gact"496 ]497 },498 {499 "id": "525f",500 "name": "Get gact action by index",501 "category": [502 "actions",503 "gact"504 ],505 "plugins": {506 "requires": "nsPlugin"507 },508 "setup": [509 [510 "$TC actions flush action gact",511 0,512 1,513 255514 ],515 "$TC actions add action drop index 3900800700"516 ],517 "cmdUnderTest": "$TC actions get action gact index 3900800700",518 "expExitCode": "0",519 "verifyCmd": "$TC actions get action gact index 3900800700",520 "matchPattern": "index 3900800700",521 "matchCount": "1",522 "teardown": [523 "$TC actions flush action gact"524 ]525 },526 {527 "id": "1021",528 "name": "Add batch of 32 gact pass actions",529 "category": [530 "actions",531 "gact"532 ],533 "plugins": {534 "requires": "nsPlugin"535 },536 "setup": [537 [538 "$TC actions flush action gact",539 0,540 1,541 255542 ]543 ],544 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action pass index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"",545 "expExitCode": "0",546 "verifyCmd": "$TC actions list action gact",547 "matchPattern": "^[ \t]+index [0-9]+ ref",548 "matchCount": "32",549 "teardown": [550 "$TC actions flush action gact"551 ]552 },553 {554 "id": "da7a",555 "name": "Add batch of 32 gact continue actions with cookie",556 "category": [557 "actions",558 "gact"559 ],560 "plugins": {561 "requires": "nsPlugin"562 },563 "setup": [564 [565 "$TC actions flush action gact",566 0,567 1,568 255569 ]570 ],571 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action continue index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"",572 "expExitCode": "0",573 "verifyCmd": "$TC actions list action gact",574 "matchPattern": "^[ \t]+index [0-9]+ ref",575 "matchCount": "32",576 "teardown": [577 "$TC actions flush action gact"578 ]579 },580 {581 "id": "8aa3",582 "name": "Delete batch of 32 gact continue actions",583 "category": [584 "actions",585 "gact"586 ],587 "plugins": {588 "requires": "nsPlugin"589 },590 "setup": [591 [592 "$TC actions flush action gact",593 0,594 1,595 255596 ],597 "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action continue index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\""598 ],599 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action gact index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"",600 "expExitCode": "0",601 "verifyCmd": "$TC actions list action gact",602 "matchPattern": "^[ \t]+index [0-9]+ ref",603 "matchCount": "0",604 "teardown": []605 },606 {607 "id": "8e47",608 "name": "Add gact action with random determ goto chain control action",609 "category": [610 "actions",611 "gact"612 ],613 "plugins": {614 "requires": "nsPlugin"615 },616 "setup": [617 [618 "$TC actions flush action gact",619 0,620 1,621 255622 ]623 ],624 "cmdUnderTest": "$TC actions add action pass random determ goto chain 1 2 index 90",625 "expExitCode": "255",626 "verifyCmd": "$TC actions list action gact",627 "matchPattern": "action order [0-9]*: gact action pass random type determ goto chain 1 val 2.*index 90 ref",628 "matchCount": "0",629 "teardown": [630 "$TC actions flush action gact"631 ]632 },633 {634 "id": "ca89",635 "name": "Replace gact action with invalid goto chain control",636 "category": [637 "actions",638 "gact"639 ],640 "plugins": {641 "requires": "nsPlugin"642 },643 "setup": [644 [645 "$TC actions flush action gact",646 0,647 1,648 255649 ],650 "$TC actions add action pass random determ drop 2 index 90"651 ],652 "cmdUnderTest": "$TC actions replace action goto chain 42 random determ drop 5 index 90 cookie c1a0c1a0",653 "expExitCode": "255",654 "verifyCmd": "$TC actions list action gact",655 "matchPattern": "action order [0-9]*: gact action pass.*random type determ drop val 2.*index 90 ref",656 "matchCount": "1",657 "teardown": [658 "$TC actions flush action gact"659 ]660 },661 {662 "id": "95ad",663 "name": "Add gact pass action with no_percpu flag",664 "category": [665 "actions",666 "gact"667 ],668 "plugins": {669 "requires": "nsPlugin"670 },671 "setup": [672 [673 "$TC actions flush action gact",674 0,675 1,676 255677 ]678 ],679 "cmdUnderTest": "$TC actions add action pass no_percpu",680 "expExitCode": "0",681 "verifyCmd": "$TC actions list action gact",682 "matchPattern": "action order [0-9]*: gact action pass.*no_percpu",683 "matchCount": "1",684 "teardown": [685 "$TC actions flush action gact"686 ]687 },688 {689 "id": "7f52",690 "name": "Try to flush action which is referenced by filter",691 "category": [692 "actions",693 "gact"694 ],695 "plugins": {696 "requires": "nsPlugin"697 },698 "setup": [699 [700 "$TC actions flush action gact",701 0,702 1,703 255704 ],705 "$TC qdisc add dev $DEV1 ingress",706 "$TC actions add action pass index 1",707 "$TC filter add dev $DEV1 protocol all ingress prio 1 handle 0x1234 matchall action gact index 1"708 ],709 "cmdUnderTest": "$TC actions flush action gact",710 "expExitCode": "1",711 "verifyCmd": "$TC actions ls action gact",712 "matchPattern": "total acts 1.*action order [0-9]*: gact action pass.*index 1 ref 2 bind 1",713 "matchCount": "1",714 "teardown": [715 "$TC qdisc del dev $DEV1 ingress",716 [717 "sleep 1; $TC actions flush action gact",718 0,719 1720 ]721 ]722 },723 {724 "id": "ae1e",725 "name": "Try to flush actions when last one is referenced by filter",726 "category": [727 "actions",728 "gact"729 ],730 "plugins": {731 "requires": "nsPlugin"732 },733 "setup": [734 [735 "$TC actions flush action gact",736 0,737 1,738 255739 ],740 "$TC qdisc add dev $DEV1 ingress",741 [742 "$TC actions add action pass index 1",743 0,744 1,745 255746 ],747 "$TC actions add action reclassify index 2",748 "$TC actions add action drop index 3",749 "$TC filter add dev $DEV1 protocol all ingress prio 1 handle 0x1234 matchall action gact index 3"750 ],751 "cmdUnderTest": "$TC actions flush action gact",752 "expExitCode": "0",753 "verifyCmd": "$TC actions ls action gact",754 "matchPattern": "total acts 1.*action order [0-9]*: gact action drop.*index 3 ref 2 bind 1",755 "matchCount": "1",756 "teardown": [757 "$TC qdisc del dev $DEV1 ingress",758 [759 "sleep 1; $TC actions flush action gact",760 0,761 1762 ]763 ]764 }765]766