diff options
author | YAMAMOTO Takashi <yamamoto@valinux.co.jp> | 2013-08-26 15:34:28 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2013-08-26 16:49:06 +0900 |
commit | 30a1a415ab004d8065bb2407a779658ce5f18ea4 (patch) | |
tree | 65ac0a8a32c102b019254f6141fd9a02e6c6e3c5 | |
parent | 49ad016184ba0b023dba4c2ac27850bd382b4194 (diff) |
of13: 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_3_parser.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ryu/ofproto/ofproto_v1_3_parser.py b/ryu/ofproto/ofproto_v1_3_parser.py index b3792add..7c73a74e 100644 --- a/ryu/ofproto/ofproto_v1_3_parser.py +++ b/ryu/ofproto/ofproto_v1_3_parser.py @@ -2567,10 +2567,23 @@ class OFPMultipartReply(MsgBase): 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_3.OFP_DESC_PACK_STR, buf, offset) + desc = list(desc) + desc = map(lambda x: x.rstrip('\0'), desc) stats = cls(*desc) stats._length = ofproto_v1_3.OFP_DESC_SIZE return stats |