summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYAMAMOTO Takashi <yamamoto@valinux.co.jp>2013-08-26 14:34:35 +0900
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2013-08-26 15:04:46 +0900
commitec23d737701d270cc1422017fd9638a9ea490b1e (patch)
tree4d7a54ad2632793633908d17207ed252e45c35c8
parentbae19f1edf6dd8d5166ef5acbdf80df6bb9f0a60 (diff)
of12: use text address for OFPPort.hw_addr and OFPPortMod.hw_addr
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_2_parser.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/ryu/ofproto/ofproto_v1_2_parser.py b/ryu/ofproto/ofproto_v1_2_parser.py
index d2d8fffd..a8a61e7a 100644
--- a/ryu/ofproto/ofproto_v1_2_parser.py
+++ b/ryu/ofproto/ofproto_v1_2_parser.py
@@ -17,6 +17,7 @@
import struct
import itertools
+from ryu.lib import addrconv
from ryu.lib import mac
from ryu import utils
from ofproto_parser import StringifyMixin, MsgBase, msg_pack_into, msg_str_attr
@@ -175,6 +176,9 @@ class OFPPort(ofproto_parser.namedtuple('OFPPort', (
@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)
+ port[i] = addrconv.mac.bin_to_text(port[i])
return cls(*port)
@@ -997,7 +1001,8 @@ class OFPPortMod(MsgBase):
def _serialize_body(self):
msg_pack_into(ofproto_v1_2.OFP_PORT_MOD_PACK_STR, self.buf,
ofproto_v1_2.OFP_HEADER_SIZE,
- self.port_no, self.hw_addr, self.config,
+ self.port_no, addrconv.mac.text_to_bin(self.hw_addr),
+ self.config,
self.mask, self.advertise)