summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYAMAMOTO Takashi <yamamoto@valinux.co.jp>2013-08-26 15:34:25 +0900
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2013-08-26 16:49:06 +0900
commitaa6c1e8b8adb2797b25b30d39ad3b84b77ed7495 (patch)
tree37e6082552a2bf21e80d80e47f9cd49a49c10062
parentb8e1d5045dabe9483199e643b332e407554c0621 (diff)
of10: make OFPDescStats more human readable
- when parsing, remove zero padding. - stop base64 encoding for json representation because these fields are ASCII strings per OF spec. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r--ryu/ofproto/ofproto_v1_0_parser.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/ryu/ofproto/ofproto_v1_0_parser.py b/ryu/ofproto/ofproto_v1_0_parser.py
index 9b7d6640..eecdd133 100644
--- a/ryu/ofproto/ofproto_v1_0_parser.py
+++ b/ryu/ofproto/ofproto_v1_0_parser.py
@@ -983,10 +983,23 @@ class NXActionFinTimeout(NXActionHeader):
class OFPDescStats(ofproto_parser.namedtuple('OFPDescStats', (
'mfr_desc', 'hw_desc', 'sw_desc', 'serial_num', 'dp_desc'))):
+
+ _TYPE = {
+ 'ascii': [
+ 'mfr_desc',
+ 'hw_desc',
+ 'sw_desc',
+ 'serial_num',
+ 'dp_desc',
+ ]
+ }
+
@classmethod
def parser(cls, buf, offset):
desc = struct.unpack_from(ofproto_v1_0.OFP_DESC_STATS_PACK_STR,
buf, offset)
+ desc = list(desc)
+ desc = map(lambda x: x.rstrip('\0'), desc)
stats = cls(*desc)
stats.length = ofproto_v1_0.OFP_DESC_STATS_SIZE
return stats