summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSimon Horman <horms@verge.net.au>2014-01-29 12:05:58 +0900
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2014-01-29 12:42:54 +0900
commitbb65f94a071d592dfa215ee52c5a4c70668b6cde (patch)
tree3610b00b631687619add594c556cf844027db3c4
parent3de81a208fe59fb5fdcbcede272696ecae9ae24d (diff)
Add OF1.4 PopPbb action support
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r--ryu/ofproto/ofproto_v1_4_parser.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/ryu/ofproto/ofproto_v1_4_parser.py b/ryu/ofproto/ofproto_v1_4_parser.py
index 3f73e803..5b2ab643 100644
--- a/ryu/ofproto/ofproto_v1_4_parser.py
+++ b/ryu/ofproto/ofproto_v1_4_parser.py
@@ -2483,3 +2483,28 @@ class OFPActionSetField(OFPAction):
def stringify_attrs(self):
yield (self.key, self.value)
+
+
+@OFPAction.register_action_type(ofproto.OFPAT_POP_PBB,
+ ofproto.OFP_ACTION_HEADER_SIZE)
+class OFPActionPopPbb(OFPAction):
+ """
+ Pop PBB action
+
+ This action pops the outermost PBB service instance header from
+ the packet.
+ """
+ def __init__(self, type_=None, len_=None):
+ super(OFPActionPopPbb, self).__init__()
+
+ @classmethod
+ def parser(cls, buf, offset):
+ (type_, len_) = struct.unpack_from(
+ ofproto.OFP_ACTION_HEADER_PACK_STR, buf, offset)
+ return cls()
+
+ @classmethod
+ def parser(cls, buf, offset):
+ (type_, len_) = struct.unpack_from(
+ ofproto.OFP_ACTION_HEADER_PACK_STR, buf, offset)
+ return cls()