summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSimon Horman <horms@verge.net.au>2014-02-27 09:06:54 +0900
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2014-02-27 09:19:00 +0900
commita3afbf08771dad0f53e977e872d542e48e0d3f7f (patch)
tree4cb58d802202dd2f3d5958ff35e2b8cad687f3ee
parent9aafc0eb56e6c3087b240529fac304193a6930cc (diff)
of13: Add experimenter property to table features reply unit test
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r--ryu/ofproto/ofproto_v1_3_parser.py2
-rw-r--r--ryu/tests/packet_data/of13/4-56-ofp_table_features_reply.packetbin11072 -> 11128 bytes
-rw-r--r--ryu/tests/packet_data_generator/src/x4.erl14
-rw-r--r--ryu/tests/unit/ofproto/json/of13/4-56-ofp_table_features_reply.packet.json29
-rw-r--r--ryu/utils.py2
5 files changed, 43 insertions, 4 deletions
diff --git a/ryu/ofproto/ofproto_v1_3_parser.py b/ryu/ofproto/ofproto_v1_3_parser.py
index a0de4617..6c13fe69 100644
--- a/ryu/ofproto/ofproto_v1_3_parser.py
+++ b/ryu/ofproto/ofproto_v1_3_parser.py
@@ -5149,7 +5149,7 @@ class OFPTableFeaturePropExperimenter(OFPTableFeatureProp):
while offset < length:
(word,) = struct.unpack_from(cls._DATA_ELEMENT_PACK_STR,
buf, offset)
- exp.data.append(word)
+ data.append(word)
offset += pack_size
return {
diff --git a/ryu/tests/packet_data/of13/4-56-ofp_table_features_reply.packet b/ryu/tests/packet_data/of13/4-56-ofp_table_features_reply.packet
index f48d4ab3..3a467f42 100644
--- a/ryu/tests/packet_data/of13/4-56-ofp_table_features_reply.packet
+++ b/ryu/tests/packet_data/of13/4-56-ofp_table_features_reply.packet
Binary files differ
diff --git a/ryu/tests/packet_data_generator/src/x4.erl b/ryu/tests/packet_data_generator/src/x4.erl
index 32e641a5..efd4deb7 100644
--- a/ryu/tests/packet_data_generator/src/x4.erl
+++ b/ryu/tests/packet_data_generator/src/x4.erl
@@ -1732,7 +1732,19 @@ x() ->
arp_tha,ipv6_src,ipv6_dst,ipv6_flabel,
icmpv6_type,icmpv6_code,ipv6_nd_target,
ipv6_nd_sll,ipv6_nd_tll,mpls_label,mpls_tc,
- mpls_bos,pbb_isid]}]},
+ mpls_bos,pbb_isid]},
+ #ofp_table_feature_prop_experimenter{
+ experimenter = 101,
+ exp_type = 0,
+ data = <<>>},
+ #ofp_table_feature_prop_experimenter{
+ experimenter = 101,
+ exp_type = 1,
+ data = <<1:32>>},
+ #ofp_table_feature_prop_experimenter{
+ experimenter = 101,
+ exp_type = 2,
+ data = <<1:32,2:32>>}]},
#ofp_table_features{
table_id = 1,name = <<"Flow Table 0x01">>,
metadata_match = <<"\377\377\377\377\377\377\377\377">>,
diff --git a/ryu/tests/unit/ofproto/json/of13/4-56-ofp_table_features_reply.packet.json b/ryu/tests/unit/ofproto/json/of13/4-56-ofp_table_features_reply.packet.json
index 3febfcec..4f46c567 100644
--- a/ryu/tests/unit/ofproto/json/of13/4-56-ofp_table_features_reply.packet.json
+++ b/ryu/tests/unit/ofproto/json/of13/4-56-ofp_table_features_reply.packet.json
@@ -4,7 +4,7 @@
{
"OFPTableFeaturesStats": {
"config": 0,
- "length": 1112,
+ "length": 1168,
"max_entries": 16777216,
"metadata_match": 18446744073709551615,
"metadata_write": 18446744073709551615,
@@ -1591,6 +1591,33 @@
],
"type": 14
}
+ },
+ {
+ "OFPTableFeaturePropExperimenter": {
+ "length": 12,
+ "type": 65534,
+ "exp_type": 0,
+ "experimenter": 101,
+ "data": []
+ }
+ },
+ {
+ "OFPTableFeaturePropExperimenter": {
+ "length": 16,
+ "type": 65534,
+ "exp_type": 1,
+ "experimenter": 101,
+ "data": [1]
+ }
+ },
+ {
+ "OFPTableFeaturePropExperimenter": {
+ "length": 20,
+ "type": 65534,
+ "exp_type": 2,
+ "experimenter": 101,
+ "data": [1, 2]
+ }
}
],
"table_id": 0
diff --git a/ryu/utils.py b/ryu/utils.py
index 1889257b..a66b7fee 100644
--- a/ryu/utils.py
+++ b/ryu/utils.py
@@ -100,7 +100,7 @@ def hex_array(data):
def bytearray_to_hex(data):
"""Convert bytearray into array of hexes to be printed."""
- return ' '.join(hex(byte) for byte in data)
+ return ' '.join(hex(ord(byte)) for byte in data)
# the following functions are taken from OpenStack