Signed-off-by: Simon Horman <[email protected]>
---
 ryu/ofproto/ofproto_v1_3_parser.py                 |   2 +-
 .../of13/4-56-ofp_table_features_reply.packet      | Bin 11072 -> 11128 bytes
 ryu/tests/packet_data_generator/src/x4.erl         |  14 +++++++++-
 .../of13/4-56-ofp_table_features_reply.packet.json |  29 ++++++++++++++++++++-
 ryu/utils.py                                       |   2 +-
 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 c05f90c..a7d8eeb 100644
--- a/ryu/ofproto/ofproto_v1_3_parser.py
+++ b/ryu/ofproto/ofproto_v1_3_parser.py
@@ -5148,7 +5148,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 
f48d4ab34089be75084bda7b65ccfeb9d601300b..3a467f42a9ee200ccfa5b41c49d70344be02d4d4
 100644
GIT binary patch
delta 88
zcmX>Q_9IM)MOeFn0R(s$7(o=vgpERBEaw0J0R<QsQb9r>0OSh*DG(o|j1kBef%2K4
MVjy~RI?GKp0L*|6pa1{>

delta 32
jcmewnb|6fMMOfQ`0R(s$7(o<E#73bomdy)TZm0nOZS4ls

diff --git a/ryu/tests/packet_data_generator/src/x4.erl 
b/ryu/tests/packet_data_generator/src/x4.erl
index 32e641a..efd4deb 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 3febfce..4f46c56 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 1889257..a66b7fe 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
-- 
1.8.5.2


------------------------------------------------------------------------------
Flow-based real-time traffic analytics software. Cisco certified tool.
Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer
Customize your own dashboards, set traffic alerts and generate reports.
Network behavioral analysis & security monitoring. All-in-one tool.
http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to