From a0313b796ed1e593037976bc7f08185ebeff9db2 Mon Sep 17 00:00:00 2001 From: YAMAMOTO Takashi Date: Mon, 26 Aug 2013 15:34:34 +0900 Subject: [PATCH] of12: remove trailing NULs in OFPPort.name Signed-off-by: YAMAMOTO Takashi Signed-off-by: FUJITA Tomonori --- ryu/ofproto/ofproto_v1_2_parser.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ryu/ofproto/ofproto_v1_2_parser.py b/ryu/ofproto/ofproto_v1_2_parser.py index f606ddd2..a3d8c962 100644 --- a/ryu/ofproto/ofproto_v1_2_parser.py +++ b/ryu/ofproto/ofproto_v1_2_parser.py @@ -176,15 +176,21 @@ class OFPPort(ofproto_parser.namedtuple('OFPPort', ( _TYPE = { 'ascii': [ 'hw_addr', + + # XXX OF spec is unclear about the encoding of name. + # OVS seems to use UTF-8. + # 'name', ] } @classmethod def parser(cls, buf, offset): port = struct.unpack_from(ofproto_v1_2.OFP_PORT_PACK_STR, buf, offset) - i = cls._fields.index('hw_addr') port = list(port) + i = cls._fields.index('hw_addr') port[i] = addrconv.mac.bin_to_text(port[i]) + i = cls._fields.index('name') + port[i] = port[i].rstrip('\0') return cls(*port)