[ { "id": "696a", "name": "Add simple ct action", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct index 42", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct zone 0 pipe.*index 42 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "e38c", "name": "Add simple ct action with cookie", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct index 42 cookie deadbeef", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct zone 0 pipe.*index 42 ref.*cookie deadbeef", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "9f20", "name": "Add ct clear action", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct clear index 42", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct clear pipe.*index 42 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "0bc1", "name": "Add ct clear action with cookie of max length", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct clear index 42 cookie aa11bb22cc33dd44ee55ff66aa11b1b2", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct clear pipe.*index 42 ref.*cookie aa11bb22cc33dd44ee55ff66aa11b1b2", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "5bea", "name": "Try ct with zone", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct zone 404 index 42", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct zone 404 pipe.*index 42 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "d5d6", "name": "Try ct with zone, commit", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct zone 404 commit index 42", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct commit zone 404 pipe.*index 42 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "029f", "name": "Try ct with zone, commit, mark", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct zone 404 commit mark 0x42 index 42", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct commit mark 66 zone 404 pipe.*index 42 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "a58d", "name": "Try ct with zone, commit, mark, nat", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct zone 404 commit mark 0x42 nat src addr 5.5.5.7 index 42", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct commit mark 66 zone 404 nat src addr 5.5.5.7 pipe.*index 42 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "901b", "name": "Try ct with full nat ipv4 range syntax", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct commit nat src addr 5.5.5.7-5.5.6.0 port 1000-2000 index 44", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct commit zone 0 nat src addr 5.5.5.7-5.5.6.0 port 1000-2000 pipe.*index 44 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "072b", "name": "Try ct with full nat ipv6 syntax", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct commit nat src addr 2001::1 port 1000-2000 index 44", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct commit zone 0 nat src addr 2001::1 port 1000-2000 pipe.*index 44 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "3420", "name": "Try ct with full nat ipv6 range syntax", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct commit nat src addr 2001::1-2001::10 port 1000-2000 index 44", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct commit zone 0 nat src addr 2001::1-2001::10 port 1000-2000 pipe.*index 44 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "4470", "name": "Try ct with full nat ipv6 range syntax + force", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct commit force nat src addr 2001::1-2001::10 port 1000-2000 index 44", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct commit force zone 0 nat src addr 2001::1-2001::10 port 1000-2000 pipe.*index 44 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "5d88", "name": "Try ct with label", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct label 123123 index 44", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct zone 0 label 12312300000000000000000000000000 pipe.*index 44 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "04d4", "name": "Try ct with label with mask", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct label 12312300000000000000000000000001/ffffffff000000000000000000000001 index 44", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct zone 0 label 12312300000000000000000000000001/ffffffff000000000000000000000001 pipe.*index 44 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "9751", "name": "Try ct with mark + mask", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct mark 0x42/0xf0 index 42", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct mark 66/0xf0 zone 0 pipe.*index 42 ref", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "2faa", "name": "Try ct with mark + mask and cookie", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct mark 0x42/0xf0 index 42 cookie aa11bb22cc33dd44ee55ff66aa11b1b2", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct mark 66/0xf0 zone 0 pipe.*index 42 ref.*cookie aa11bb22cc33dd44ee55ff66aa11b1b2", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "3991", "name": "Add simple ct action with no_percpu flag", "category": [ "actions", "ct" ], "plugins": { "requires": "nsPlugin" }, "setup": [ [ "$TC actions flush action ct", 0, 1, 255 ] ], "cmdUnderTest": "$TC actions add action ct no_percpu", "expExitCode": "0", "verifyCmd": "$TC actions list action ct", "matchPattern": "action order [0-9]*: ct zone 0 pipe.*no_percpu", "matchCount": "1", "teardown": [ "$TC actions flush action ct" ] }, { "id": "3992", "name": "Add ct action triggering DNAT tuple conflict", "category": [ "actions", "ct", "scapy" ], "plugins": { "requires": "nsPlugin" }, "plugins": { "requires": [ "nsPlugin", "scapyPlugin" ] }, "setup": [ [ "$TC qdisc del dev $DEV1 ingress", 0, 1, 2, 255 ], "$TC qdisc add dev $DEV1 ingress" ], "cmdUnderTest": "$TC filter add dev $DEV1 ingress protocol ip prio 1 flower ct_state -trk action ct commit nat dst addr 20.0.0.1 port 10 pipe action drop", "scapy": [ { "iface": "$DEV0", "count": 1, "packet": "Ether(type=0x800)/IP(src='10.0.0.10',dst='10.0.0.10')/TCP(sport=5000,dport=10)" }, { "iface": "$DEV0", "count": 1, "packet": "Ether(type=0x800)/IP(src='10.0.0.10',dst='10.0.0.20')/TCP(sport=5000,dport=10)" } ], "expExitCode": "0", "verifyCmd": "cat /proc/net/nf_conntrack", "matchPattern": "dst=10.0.0.20", "matchCount": "1", "teardown": [ "$TC qdisc del dev $DEV1 ingress" ] } ]