| [ |
| { |
| "id": "7565", |
| "name": "Add nat action on ingress with default control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 192.168.1.1 200.200.200.1", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat", |
| "matchPattern": "action order [0-9]+: nat ingress 192.168.1.1/32 200.200.200.1 pass", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "fd79", |
| "name": "Add nat action on ingress with pipe control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 1.1.1.1 2.2.2.1 pipe index 77", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 77", |
| "matchPattern": "action order [0-9]+: nat ingress 1.1.1.1/32 2.2.2.1 pipe.*index 77 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "eab9", |
| "name": "Add nat action on ingress with continue control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 192.168.10.10 192.168.20.20 continue index 1000", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 1000", |
| "matchPattern": "action order [0-9]+: nat ingress 192.168.10.10/32 192.168.20.20 continue.*index 1000 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "c53a", |
| "name": "Add nat action on ingress with reclassify control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 192.168.10.10 192.168.20.20 reclassify index 1000", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 1000", |
| "matchPattern": "action order [0-9]+: nat ingress 192.168.10.10/32 192.168.20.20 reclassify.*index 1000 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "76c9", |
| "name": "Add nat action on ingress with jump control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 12.18.10.10 12.18.20.20 jump 10 index 22", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 22", |
| "matchPattern": "action order [0-9]+: nat ingress 12.18.10.10/32 12.18.20.20 jump 10.*index 22 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "24c6", |
| "name": "Add nat action on ingress with drop control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 1.18.1.1 1.18.2.2 drop index 722", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 722", |
| "matchPattern": "action order [0-9]+: nat ingress 1.18.1.1/32 1.18.2.2 drop.*index 722 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "2120", |
| "name": "Add nat action on ingress with maximum index value", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 1.18.1.1 1.18.2.2 index 4294967295", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 4294967295", |
| "matchPattern": "action order [0-9]+: nat ingress 1.18.1.1/32 1.18.2.2 pass.*index 4294967295 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "3e9d", |
| "name": "Add nat action on ingress with invalid index value", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 1.18.1.1 1.18.2.2 index 4294967295555", |
| "expExitCode": "255", |
| "verifyCmd": "$TC actions get action nat index 4294967295555", |
| "matchPattern": "action order [0-9]+: nat ingress 1.18.1.1/32 1.18.2.2 pass.*index 4294967295555 ref", |
| "matchCount": "0", |
| "teardown": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ] |
| }, |
| { |
| "id": "f6c9", |
| "name": "Add nat action on ingress with invalid IP address", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 1.1.1.1 1.1888.2.2 index 7", |
| "expExitCode": "255", |
| "verifyCmd": "$TC actions get action nat index 7", |
| "matchPattern": "action order [0-9]+: nat ingress 1.1.1.1/32 1.1888.2.2 pass.*index 7 ref", |
| "matchCount": "0", |
| "teardown": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ] |
| }, |
| { |
| "id": "be25", |
| "name": "Add nat action on ingress with invalid argument", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 1.1.1.1 1.18.2.2 another_arg index 12", |
| "expExitCode": "255", |
| "verifyCmd": "$TC actions get action nat index 12", |
| "matchPattern": "action order [0-9]+: nat ingress 1.1.1.1/32 1.18.2.2 pass.*another_arg.*index 12 ref", |
| "matchCount": "0", |
| "teardown": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ] |
| }, |
| { |
| "id": "a7bd", |
| "name": "Add nat action on ingress with DEFAULT IP address", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress default 10.10.10.1 index 12", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 12", |
| "matchPattern": "action order [0-9]+: nat ingress 0.0.0.0/32 10.10.10.1 pass.*index 12 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "ee1e", |
| "name": "Add nat action on ingress with ANY IP address", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress any 10.10.10.1 index 12", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 12", |
| "matchPattern": "action order [0-9]+: nat ingress 0.0.0.0/32 10.10.10.1 pass.*index 12 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "1de8", |
| "name": "Add nat action on ingress with ALL IP address", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress all 10.10.10.1 index 12", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 12", |
| "matchPattern": "action order [0-9]+: nat ingress 0.0.0.0/32 10.10.10.1 pass.*index 12 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "8dba", |
| "name": "Add nat action on egress with default control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress 10.10.10.1 20.20.20.1", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat", |
| "matchPattern": "action order [0-9]+: nat egress 10.10.10.1/32 20.20.20.1 pass", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "19a7", |
| "name": "Add nat action on egress with pipe control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress 10.10.10.1 20.20.20.1 pipe", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat", |
| "matchPattern": "action order [0-9]+: nat egress 10.10.10.1/32 20.20.20.1 pipe", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "f1d9", |
| "name": "Add nat action on egress with continue control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress 10.10.10.1 20.20.20.1 continue", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat", |
| "matchPattern": "action order [0-9]+: nat egress 10.10.10.1/32 20.20.20.1 continue", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "6d4a", |
| "name": "Add nat action on egress with reclassify control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress 10.10.10.1 20.20.20.1 reclassify", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat", |
| "matchPattern": "action order [0-9]+: nat egress 10.10.10.1/32 20.20.20.1 reclassify", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "b313", |
| "name": "Add nat action on egress with jump control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress 10.10.10.1 20.20.20.1 jump 777", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat", |
| "matchPattern": "action order [0-9]+: nat egress 10.10.10.1/32 20.20.20.1 jump 777", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "d9fc", |
| "name": "Add nat action on egress with drop control action", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress 10.10.10.1 20.20.20.1 drop", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat", |
| "matchPattern": "action order [0-9]+: nat egress 10.10.10.1/32 20.20.20.1 drop", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "a895", |
| "name": "Add nat action on egress with DEFAULT IP address", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress default 20.20.20.1 pipe index 10", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 10", |
| "matchPattern": "action order [0-9]+: nat egress 0.0.0.0/32 20.20.20.1 pipe.*index 10 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "2572", |
| "name": "Add nat action on egress with ANY IP address", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress any 20.20.20.1 pipe index 10", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 10", |
| "matchPattern": "action order [0-9]+: nat egress 0.0.0.0/32 20.20.20.1 pipe.*index 10 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "37f3", |
| "name": "Add nat action on egress with ALL IP address", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress all 20.20.20.1 pipe index 10", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 10", |
| "matchPattern": "action order [0-9]+: nat egress 0.0.0.0/32 20.20.20.1 pipe.*index 10 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "6054", |
| "name": "Add nat action on egress with cookie", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat egress all 20.20.20.1 pipe index 10 cookie aa1bc2d3eeff112233445566778800a1", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 10", |
| "matchPattern": "action order [0-9]+: nat egress 0.0.0.0/32 20.20.20.1 pipe.*index 10 ref.*cookie aa1bc2d3eeff112233445566778800a1", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "79d6", |
| "name": "Add nat action on ingress with cookie", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ] |
| ], |
| "cmdUnderTest": "$TC actions add action nat ingress 192.168.1.1 10.10.10.1 reclassify index 1 cookie 112233445566778899aabbccddeeff11", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions get action nat index 1", |
| "matchPattern": "action order [0-9]+: nat ingress 192.168.1.1/32 10.10.10.1 reclassify.*index 1 ref.*cookie 112233445566778899aabbccddeeff11", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "4b12", |
| "name": "Replace nat action with invalid goto chain control", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ], |
| "$TC actions add action nat ingress 1.18.1.1 1.18.2.2 drop index 90" |
| ], |
| "cmdUnderTest": "$TC actions replace action nat ingress 1.18.1.1 1.18.2.2 goto chain 42 index 90 cookie c1a0c1a0", |
| "expExitCode": "255", |
| "verifyCmd": "$TC actions get action nat index 90", |
| "matchPattern": "action order [0-9]+: nat ingress 1.18.1.1/32 1.18.2.2 drop.*index 90 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "b811", |
| "name": "Delete nat action with valid index", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ], |
| "$TC actions add action nat ingress 1.1.1.1 2.2.2.2 drop index 20" |
| ], |
| "cmdUnderTest": "$TC actions del action nat index 20", |
| "expExitCode": "0", |
| "verifyCmd": "$TC actions ls action nat index 20", |
| "matchPattern": "action order [0-9]+: nat ingress 1.1.1.1/32 2.2.2.2 drop.*index 20 ref", |
| "matchCount": "0", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| }, |
| { |
| "id": "a521", |
| "name": "Delete nat action with invalid index", |
| "category": [ |
| "actions", |
| "nat" |
| ], |
| "plugins": { |
| "requires": "nsPlugin" |
| }, |
| "setup": [ |
| [ |
| "$TC actions flush action nat", |
| 0, |
| 1, |
| 255 |
| ], |
| "$TC actions add action nat ingress 1.1.1.1 2.2.2.2 drop index 20" |
| ], |
| "cmdUnderTest": "$TC actions del action nat index 10", |
| "expExitCode": "255", |
| "verifyCmd": "$TC actions ls action nat index 20", |
| "matchPattern": "action order [0-9]+: nat ingress 1.1.1.1/32 2.2.2.2 drop.*index 20 ref", |
| "matchCount": "1", |
| "teardown": [ |
| "$TC actions flush action nat" |
| ] |
| } |
| ] |