--- /dev/null
+[
+ "action: 09_SET_TP_SRC (IPv6/TCP)",
+ {
+ "description": "ethernet/ipv6/tcp(src_port=11111)-->'tp_dst=11111,actions=mod_tp_src:12345,output:2'",
+ "prerequisite": [
+ {
+ "OFPFlowMod": {
+ "actions": [
+ {
+ "OFPActionSetTpSrc": {
+ "tp": 12345
+ }
+ },
+ {
+ "OFPActionOutput": {
+ "port": 2
+ }
+ }
+ ],
+ "command": 0,
+ "cookie": 0,
+ "match": {
+ "OFPMatch": {
+ "dl_type": 34525,
+ "nw_proto": 6,
+ "tp_src": 11111
+ }
+ }
+ }
+ }
+ ],
+ "tests": [
+ {
+ "ingress": [
+ "ethernet(dst='22:22:22:22:22:22', src='12:11:11:11:11:11', ethertype=34525)",
+ "ipv6(dst='20::20', flow_label=100, src='10::10', nxt=6, hop_limit=64, traffic_class=32)",
+ "tcp(dst_port=2222, option=bytes(b'\\x00' * 4), src_port=11111)",
+ "b'\\x01\\x02\\x03\\x04\\x05\\x06\\x07\\x08\\t\\n\\x0b\\x0c\\r\\x0e\\x0f\\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17\\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f'"
+ ],
+ "egress": [
+ "ethernet(dst='22:22:22:22:22:22', src='12:11:11:11:11:11', ethertype=34525)",
+ "ipv6(dst='20::20', flow_label=100, src='10::10', nxt=6, hop_limit=64, traffic_class=32)",
+ "tcp(dst_port=2222, option=bytes(b'\\x00' * 4), src_port=12345)",
+ "b'\\x01\\x02\\x03\\x04\\x05\\x06\\x07\\x08\\t\\n\\x0b\\x0c\\r\\x0e\\x0f\\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17\\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f'"
+ ]
+ }
+ ]
+ },
+ {
+ "description": "ethernet/vlan/ipv6/tcp(src_port=11111)-->'tp_dst=11111,actions=mod_tp_src:12345,output:2'",
+ "prerequisite": [
+ {
+ "OFPFlowMod": {
+ "actions": [
+ {
+ "OFPActionSetTpSrc": {
+ "tp": 12345
+ }
+ },
+ {
+ "OFPActionOutput": {
+ "port": 2
+ }
+ }
+ ],
+ "command": 0,
+ "cookie": 0,
+ "match": {
+ "OFPMatch": {
+ "dl_type": 34525,
+ "nw_proto": 6,
+ "tp_src": 11111
+ }
+ }
+ }
+ }
+ ],
+ "tests": [
+ {
+ "ingress": [
+ "ethernet(dst='22:22:22:22:22:22', src='12:11:11:11:11:11', ethertype=33024)",
+ "vlan(pcp=3, cfi=0, vid=100, ethertype=34525)",
+ "ipv6(dst='20::20', flow_label=100, src='10::10', nxt=6, hop_limit=64, traffic_class=32)",
+ "tcp(dst_port=2222, option=bytes(b'\\x00' * 4), src_port=11111)",
+ "b'\\x01\\x02\\x03\\x04\\x05\\x06\\x07\\x08\\t\\n\\x0b\\x0c\\r\\x0e\\x0f\\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17\\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f'"
+ ],
+ "egress": [
+ "ethernet(dst='22:22:22:22:22:22', src='12:11:11:11:11:11', ethertype=33024)",
+ "vlan(pcp=3, cfi=0, vid=100, ethertype=34525)",
+ "ipv6(dst='20::20', flow_label=100, src='10::10', nxt=6, hop_limit=64, traffic_class=32)",
+ "tcp(dst_port=2222, option=bytes(b'\\x00' * 4), src_port=12345)",
+ "b'\\x01\\x02\\x03\\x04\\x05\\x06\\x07\\x08\\t\\n\\x0b\\x0c\\r\\x0e\\x0f\\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17\\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f'"
+ ]
+ }
+ ]
+ }
+]