datapath: Drop set_skb_csum_bits().
[openvswitch] / tests / ofproto.at
index b994950d40696f305231cc6d2887f42bb08532a9..e6def3ec7ce0510cb37b6b4b1bc9d02e42a55082 100644 (file)
@@ -1,19 +1,5 @@
 AT_BANNER([ofproto])
 
-m4_define([OFPROTO_START],
-  [OVS_RUNDIR=$PWD; export OVS_RUNDIR
-   OVS_LOGDIR=$PWD; export OVS_LOGDIR
-   trap 'kill `cat ovs-openflowd.pid`' 0
-   AT_CAPTURE_FILE([ovs-openflowd.log])
-   AT_CHECK(
-     [ovs-openflowd --detach --pidfile --enable-dummy --log-file dummy@br0 none --datapath-id=fedcba9876543210 $1],
-     [0], [ignore], [ignore])
-])
-
-m4_define([OFPROTO_STOP],
-  [AT_CHECK([ovs-appctl -t ovs-openflowd exit])
-   trap '' 0])
-
 AT_SETUP([ofproto - echo request])
 OFPROTO_START
 AT_CHECK([ovs-ofctl -vANY:ANY:WARN probe br0])
@@ -23,12 +9,12 @@ AT_CLEANUP
 AT_SETUP([ofproto - feature request, config request])
 OFPROTO_START
 AT_CHECK([ovs-ofctl -vANY:ANY:WARN show br0], [0], [stdout])
-AT_CHECK([[sed 's/ (xid=0x[0-9a-fA-F]*)//' stdout]], [0], [dnl
+AT_CHECK([STRIP_XIDS stdout], [0], [dnl
 OFPT_FEATURES_REPLY: ver:0x1, dpid:fedcba9876543210
-n_tables:2, n_buffers:256
+n_tables:1, n_buffers:256
 features: capabilities:0x87, actions:0xfff
  LOCAL(br0): addr:aa:55:aa:55:00:00, config: 0x1, state:0x1
-OFPT_GET_CONFIG_REPLY: miss_send_len=0
+OFPT_GET_CONFIG_REPLY: frags=normal miss_send_len=0
 ])
 OFPROTO_STOP
 AT_CLEANUP
@@ -45,13 +31,61 @@ do
     command=$[1] config=$[2] state=$[3]
     AT_CHECK([ovs-ofctl -vANY:ANY:WARN mod-port br0 br0 $command])
     AT_CHECK([ovs-ofctl -vANY:ANY:WARN show br0], [0], [stdout])
-    AT_CHECK_UNQUOTED([[sed 's/ (xid=0x[0-9a-fA-F]*)//' stdout]], [0], [dnl
+    AT_CHECK_UNQUOTED([STRIP_XIDS stdout], [0], [dnl
 OFPT_FEATURES_REPLY: ver:0x1, dpid:fedcba9876543210
-n_tables:2, n_buffers:256
+n_tables:1, n_buffers:256
 features: capabilities:0x87, actions:0xfff
  LOCAL(br0): addr:aa:55:aa:55:00:00, config: $config, state:$state
-OFPT_GET_CONFIG_REPLY: miss_send_len=0
+OFPT_GET_CONFIG_REPLY: frags=normal miss_send_len=0
 ])
 done
 OFPROTO_STOP
 AT_CLEANUP
+
+AT_SETUP([ofproto - basic flow_mod commands (NXM)])
+OFPROTO_START
+AT_CHECK([ovs-ofctl dump-flows br0 | STRIP_XIDS], [0], [NXST_FLOW reply:
+])
+AT_CHECK([echo 'in_port=1,actions=0' | ovs-ofctl add-flows br0 -])
+AT_CHECK([ovs-ofctl add-flow br0 in_port=0,actions=1])
+# Check that a table_id is really sent:
+AT_CHECK([ovs-ofctl -F nxm add-flow br0 table=1,in_port=0,actions=1 2>&1 | STRIP_XIDS | sed 1q], [0], [dnl
+OFPT_ERROR: type OFPET_FLOW_MOD_FAILED, code NXFMFC_BAD_TABLE_ID
+])
+AT_CHECK([ovs-ofctl dump-flows br0 | STRIP_XIDS | STRIP_DURATION | sort], [0], [dnl
+ cookie=0x0, duration=?s, table=0, n_packets=0, n_bytes=0, in_port=0 actions=output:1
+ cookie=0x0, duration=?s, table=0, n_packets=0, n_bytes=0, in_port=1 actions=output:0
+NXST_FLOW reply:
+])
+AT_CHECK([ovs-ofctl dump-aggregate br0 | STRIP_XIDS], [0], [dnl
+NXST_AGGREGATE reply: packet_count=0 byte_count=0 flow_count=2
+])
+AT_CHECK([ovs-ofctl del-flows br0])
+AT_CHECK([ovs-ofctl dump-flows br0 | STRIP_XIDS], [0], [NXST_FLOW reply:
+])
+OFPROTO_STOP
+AT_CLEANUP
+
+AT_SETUP([ofproto - basic flow_mod commands (OpenFlow 1.0)])
+OFPROTO_START
+AT_CHECK([ovs-ofctl -F openflow10 dump-flows br0 | STRIP_XIDS], [0], [OFPST_FLOW reply:
+])
+AT_CHECK([echo 'in_port=1,actions=0' | ovs-ofctl -F openflow10 add-flows br0 -])
+AT_CHECK([ovs-ofctl -F openflow10 add-flow br0 in_port=0,actions=1])
+# Check that a table_id is really sent:
+AT_CHECK([ovs-ofctl -F openflow10 add-flow br0 table=1,in_port=0,actions=1 2>&1 | STRIP_XIDS | sed 1q], [0], [dnl
+OFPT_ERROR: type OFPET_FLOW_MOD_FAILED, code NXFMFC_BAD_TABLE_ID
+])
+AT_CHECK([ovs-ofctl -F openflow10 dump-flows br0 | STRIP_XIDS | STRIP_DURATION | sort], [0], [dnl
+ cookie=0x0, duration=?s, table=0, n_packets=0, n_bytes=0, in_port=0 actions=output:1
+ cookie=0x0, duration=?s, table=0, n_packets=0, n_bytes=0, in_port=1 actions=output:0
+OFPST_FLOW reply:
+])
+AT_CHECK([ovs-ofctl -F openflow10 dump-aggregate br0 | STRIP_XIDS], [0], [dnl
+OFPST_AGGREGATE reply: packet_count=0 byte_count=0 flow_count=2
+])
+AT_CHECK([ovs-ofctl -F openflow10 del-flows br0])
+AT_CHECK([ovs-ofctl -F openflow10 dump-flows br0 | STRIP_XIDS], [0], [OFPST_FLOW reply:
+])
+OFPROTO_STOP
+AT_CLEANUP