diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2012-05-21 21:20:52 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2012-05-22 08:50:20 +0900 |
commit | 79189bd1f8ae488515f19727b0ded9f481cd3371 (patch) | |
tree | f515138abcb8152255fa139c60ee598835a5cf04 | |
parent | 4d93ca62cfe6bad7c39612af9fa0c0e1af51dc6d (diff) |
add Nicira Extension NXAST_EXIT support
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r-- | ryu/ofproto/ofproto_v1_0.py | 2 | ||||
-rw-r--r-- | ryu/ofproto/ofproto_v1_0_parser.py | 18 |
2 files changed, 19 insertions, 1 deletions
diff --git a/ryu/ofproto/ofproto_v1_0.py b/ryu/ofproto/ofproto_v1_0.py index 34921065..af34a4a6 100644 --- a/ryu/ofproto/ofproto_v1_0.py +++ b/ryu/ofproto/ofproto_v1_0.py @@ -242,7 +242,7 @@ NXAST_BUNDLE = 12 NXAST_BUNDLE_LOAD = 13 NXAST_RESUBMIT_TABLE = 14 NXAST_OUTPUT_REG = 15 - +NXAST_EXIT = 17 NX_ACTION_RESUBMIT_PACK_STR = '!HHIHHB3x' NX_ACTION_RESUBMIT_SIZE = 16 diff --git a/ryu/ofproto/ofproto_v1_0_parser.py b/ryu/ofproto/ofproto_v1_0_parser.py index f016e829..8820e3be 100644 --- a/ryu/ofproto/ofproto_v1_0_parser.py +++ b/ryu/ofproto/ofproto_v1_0_parser.py @@ -684,6 +684,24 @@ class NXActionOutputReg(NXActionHeader): return cls(ofs_nbits, src, max_len) +@NXActionHeader.register_nx_action_subtype(ofproto_v1_0.NXAST_EXIT) +class NXActionExit(NXActionHeader): + def __init__(self): + super(NXActionExit, self).__init__( + ofproto_v1_0.NXAST_EXIT, + ofproto_v1_0.NX_ACTION_HEADER_SIZE) + + def serialize(self, buf, offset): + msg_pack_into(ofproto_v1_0.NX_ACTION_HEADER_PACK_STR, buf, offset, + self.type, self.len, self.vendor, self.subtype) + + @classmethod + def parser(cls, buf, offset): + (type_, len_, vendor, subtype) = struct.unpack_from( + ofproto_v1_0.NX_ACTION_HEADER_PACK_STR, buf, offset) + return cls() + + class OFPDescStats(collections.namedtuple('OFPDescStats', ('mfr_desc', 'hw_desc', 'sw_desc', 'serial_num', 'dp_desc'))): @classmethod |