copy in of11 package
These modules were copied from the oft-1.1 branch.
diff --git a/src/python/of11/action.py b/src/python/of11/action.py
new file mode 100644
index 0000000..447cd17
--- /dev/null
+++ b/src/python/of11/action.py
@@ -0,0 +1,550 @@
+
+# Python OpenFlow action wrapper classes
+
+from cstruct import *
+
+
+
+class action_set_nw_src(ofp_action_nw_addr):
+ """
+ Wrapper class for set_nw_src action object
+
+ Data members inherited from ofp_action_nw_addr:
+ @arg type
+ @arg len
+ @arg nw_addr
+
+ """
+ def __init__(self):
+ ofp_action_nw_addr.__init__(self)
+ self.type = OFPAT_SET_NW_SRC
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_nw_src\n"
+ outstr += ofp_action_nw_addr.show(self, prefix)
+ return outstr
+
+
+class action_set_mpls_tc(ofp_action_mpls_tc):
+ """
+ Wrapper class for set_mpls_tc action object
+
+ Data members inherited from ofp_action_mpls_tc:
+ @arg type
+ @arg len
+ @arg mpls_tc
+
+ """
+ def __init__(self):
+ ofp_action_mpls_tc.__init__(self)
+ self.type = OFPAT_SET_MPLS_TC
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_mpls_tc\n"
+ outstr += ofp_action_mpls_tc.show(self, prefix)
+ return outstr
+
+
+class action_set_nw_tos(ofp_action_nw_tos):
+ """
+ Wrapper class for set_nw_tos action object
+
+ Data members inherited from ofp_action_nw_tos:
+ @arg type
+ @arg len
+ @arg nw_tos
+
+ """
+ def __init__(self):
+ ofp_action_nw_tos.__init__(self)
+ self.type = OFPAT_SET_NW_TOS
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_nw_tos\n"
+ outstr += ofp_action_nw_tos.show(self, prefix)
+ return outstr
+
+
+class action_dec_mpls_ttl(ofp_action_header):
+ """
+ Wrapper class for dec_mpls_ttl action object
+
+ Data members inherited from ofp_action_header:
+ @arg type
+ @arg len
+
+ """
+ def __init__(self):
+ ofp_action_header.__init__(self)
+ self.type = OFPAT_DEC_MPLS_TTL
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_dec_mpls_ttl\n"
+ outstr += ofp_action_header.show(self, prefix)
+ return outstr
+
+
+class action_set_nw_dst(ofp_action_nw_addr):
+ """
+ Wrapper class for set_nw_dst action object
+
+ Data members inherited from ofp_action_nw_addr:
+ @arg type
+ @arg len
+ @arg nw_addr
+
+ """
+ def __init__(self):
+ ofp_action_nw_addr.__init__(self)
+ self.type = OFPAT_SET_NW_DST
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_nw_dst\n"
+ outstr += ofp_action_nw_addr.show(self, prefix)
+ return outstr
+
+
+class action_set_mpls_label(ofp_action_mpls_label):
+ """
+ Wrapper class for set_mpls_label action object
+
+ Data members inherited from ofp_action_mpls_label:
+ @arg type
+ @arg len
+ @arg mpls_label
+
+ """
+ def __init__(self):
+ ofp_action_mpls_label.__init__(self)
+ self.type = OFPAT_SET_MPLS_LABEL
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_mpls_label\n"
+ outstr += ofp_action_mpls_label.show(self, prefix)
+ return outstr
+
+
+class action_group(ofp_action_group):
+ """
+ Wrapper class for group action object
+
+ Data members inherited from ofp_action_group:
+ @arg type
+ @arg len
+ @arg group_id
+
+ """
+ def __init__(self):
+ ofp_action_group.__init__(self)
+ self.type = OFPAT_GROUP
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_group\n"
+ outstr += ofp_action_group.show(self, prefix)
+ return outstr
+
+
+class action_copy_ttl_out(ofp_action_header):
+ """
+ Wrapper class for copy_ttl_out action object
+
+ Data members inherited from ofp_action_header:
+ @arg type
+ @arg len
+
+ """
+ def __init__(self):
+ ofp_action_header.__init__(self)
+ self.type = OFPAT_COPY_TTL_OUT
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_copy_ttl_out\n"
+ outstr += ofp_action_header.show(self, prefix)
+ return outstr
+
+
+class action_set_vlan_vid(ofp_action_vlan_vid):
+ """
+ Wrapper class for set_vlan_vid action object
+
+ Data members inherited from ofp_action_vlan_vid:
+ @arg type
+ @arg len
+ @arg vlan_vid
+
+ """
+ def __init__(self):
+ ofp_action_vlan_vid.__init__(self)
+ self.type = OFPAT_SET_VLAN_VID
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_vlan_vid\n"
+ outstr += ofp_action_vlan_vid.show(self, prefix)
+ return outstr
+
+
+class action_set_mpls_ttl(ofp_action_mpls_ttl):
+ """
+ Wrapper class for set_mpls_ttl action object
+
+ Data members inherited from ofp_action_mpls_ttl:
+ @arg type
+ @arg len
+ @arg mpls_ttl
+
+ """
+ def __init__(self):
+ ofp_action_mpls_ttl.__init__(self)
+ self.type = OFPAT_SET_MPLS_TTL
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_mpls_ttl\n"
+ outstr += ofp_action_mpls_ttl.show(self, prefix)
+ return outstr
+
+
+class action_pop_vlan(ofp_action_header):
+ """
+ Wrapper class for pop_vlan action object
+
+ Data members inherited from ofp_action_header:
+ @arg type
+ @arg len
+
+ """
+ def __init__(self):
+ ofp_action_header.__init__(self)
+ self.type = OFPAT_POP_VLAN
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_pop_vlan\n"
+ outstr += ofp_action_header.show(self, prefix)
+ return outstr
+
+
+class action_set_tp_dst(ofp_action_tp_port):
+ """
+ Wrapper class for set_tp_dst action object
+
+ Data members inherited from ofp_action_tp_port:
+ @arg type
+ @arg len
+ @arg tp_port
+
+ """
+ def __init__(self):
+ ofp_action_tp_port.__init__(self)
+ self.type = OFPAT_SET_TP_DST
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_tp_dst\n"
+ outstr += ofp_action_tp_port.show(self, prefix)
+ return outstr
+
+
+class action_pop_mpls(ofp_action_pop_mpls):
+ """
+ Wrapper class for pop_mpls action object
+
+ Data members inherited from ofp_action_pop_mpls:
+ @arg type
+ @arg len
+ @arg ethertype
+
+ """
+ def __init__(self):
+ ofp_action_pop_mpls.__init__(self)
+ self.type = OFPAT_POP_MPLS
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_pop_mpls\n"
+ outstr += ofp_action_pop_mpls.show(self, prefix)
+ return outstr
+
+
+class action_push_vlan(ofp_action_push):
+ """
+ Wrapper class for push_vlan action object
+
+ Data members inherited from ofp_action_push:
+ @arg type
+ @arg len
+ @arg ethertype
+
+ """
+ def __init__(self):
+ ofp_action_push.__init__(self)
+ self.type = OFPAT_PUSH_VLAN
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_push_vlan\n"
+ outstr += ofp_action_push.show(self, prefix)
+ return outstr
+
+
+class action_set_vlan_pcp(ofp_action_vlan_pcp):
+ """
+ Wrapper class for set_vlan_pcp action object
+
+ Data members inherited from ofp_action_vlan_pcp:
+ @arg type
+ @arg len
+ @arg vlan_pcp
+
+ """
+ def __init__(self):
+ ofp_action_vlan_pcp.__init__(self)
+ self.type = OFPAT_SET_VLAN_PCP
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_vlan_pcp\n"
+ outstr += ofp_action_vlan_pcp.show(self, prefix)
+ return outstr
+
+
+class action_set_tp_src(ofp_action_tp_port):
+ """
+ Wrapper class for set_tp_src action object
+
+ Data members inherited from ofp_action_tp_port:
+ @arg type
+ @arg len
+ @arg tp_port
+
+ """
+ def __init__(self):
+ ofp_action_tp_port.__init__(self)
+ self.type = OFPAT_SET_TP_SRC
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_tp_src\n"
+ outstr += ofp_action_tp_port.show(self, prefix)
+ return outstr
+
+
+class action_experimenter(ofp_action_experimenter_header):
+ """
+ Wrapper class for experimenter action object
+
+ Data members inherited from ofp_action_experimenter_header:
+ @arg type
+ @arg len
+ @arg experimenter
+
+ """
+ def __init__(self):
+ ofp_action_experimenter_header.__init__(self)
+ self.type = OFPAT_EXPERIMENTER
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_experimenter\n"
+ outstr += ofp_action_experimenter_header.show(self, prefix)
+ return outstr
+
+
+class action_set_nw_ttl(ofp_action_nw_ttl):
+ """
+ Wrapper class for set_nw_ttl action object
+
+ Data members inherited from ofp_action_nw_ttl:
+ @arg type
+ @arg len
+ @arg nw_ttl
+
+ """
+ def __init__(self):
+ ofp_action_nw_ttl.__init__(self)
+ self.type = OFPAT_SET_NW_TTL
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_nw_ttl\n"
+ outstr += ofp_action_nw_ttl.show(self, prefix)
+ return outstr
+
+
+class action_copy_ttl_in(ofp_action_header):
+ """
+ Wrapper class for copy_ttl_in action object
+
+ Data members inherited from ofp_action_header:
+ @arg type
+ @arg len
+
+ """
+ def __init__(self):
+ ofp_action_header.__init__(self)
+ self.type = OFPAT_COPY_TTL_IN
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_copy_ttl_in\n"
+ outstr += ofp_action_header.show(self, prefix)
+ return outstr
+
+
+class action_set_nw_ecn(ofp_action_nw_ecn):
+ """
+ Wrapper class for set_nw_ecn action object
+
+ Data members inherited from ofp_action_nw_ecn:
+ @arg type
+ @arg len
+ @arg nw_ecn
+
+ """
+ def __init__(self):
+ ofp_action_nw_ecn.__init__(self)
+ self.type = OFPAT_SET_NW_ECN
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_nw_ecn\n"
+ outstr += ofp_action_nw_ecn.show(self, prefix)
+ return outstr
+
+
+class action_set_dl_dst(ofp_action_dl_addr):
+ """
+ Wrapper class for set_dl_dst action object
+
+ Data members inherited from ofp_action_dl_addr:
+ @arg type
+ @arg len
+ @arg dl_addr
+
+ """
+ def __init__(self):
+ ofp_action_dl_addr.__init__(self)
+ self.type = OFPAT_SET_DL_DST
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_dl_dst\n"
+ outstr += ofp_action_dl_addr.show(self, prefix)
+ return outstr
+
+
+class action_push_mpls(ofp_action_push):
+ """
+ Wrapper class for push_mpls action object
+
+ Data members inherited from ofp_action_push:
+ @arg type
+ @arg len
+ @arg ethertype
+
+ """
+ def __init__(self):
+ ofp_action_push.__init__(self)
+ self.type = OFPAT_PUSH_MPLS
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_push_mpls\n"
+ outstr += ofp_action_push.show(self, prefix)
+ return outstr
+
+
+class action_dec_nw_ttl(ofp_action_header):
+ """
+ Wrapper class for dec_nw_ttl action object
+
+ Data members inherited from ofp_action_header:
+ @arg type
+ @arg len
+
+ """
+ def __init__(self):
+ ofp_action_header.__init__(self)
+ self.type = OFPAT_DEC_NW_TTL
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_dec_nw_ttl\n"
+ outstr += ofp_action_header.show(self, prefix)
+ return outstr
+
+
+class action_set_dl_src(ofp_action_dl_addr):
+ """
+ Wrapper class for set_dl_src action object
+
+ Data members inherited from ofp_action_dl_addr:
+ @arg type
+ @arg len
+ @arg dl_addr
+
+ """
+ def __init__(self):
+ ofp_action_dl_addr.__init__(self)
+ self.type = OFPAT_SET_DL_SRC
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_dl_src\n"
+ outstr += ofp_action_dl_addr.show(self, prefix)
+ return outstr
+
+
+class action_set_queue(ofp_action_set_queue):
+ """
+ Wrapper class for set_queue action object
+
+ Data members inherited from ofp_action_set_queue:
+ @arg type
+ @arg len
+ @arg queue_id
+
+ """
+ def __init__(self):
+ ofp_action_set_queue.__init__(self)
+ self.type = OFPAT_SET_QUEUE
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_set_queue\n"
+ outstr += ofp_action_set_queue.show(self, prefix)
+ return outstr
+
+
+class action_output(ofp_action_output):
+ """
+ Wrapper class for output action object
+
+ Data members inherited from ofp_action_output:
+ @arg type
+ @arg len
+ @arg port
+ @arg max_len
+
+ """
+ def __init__(self):
+ ofp_action_output.__init__(self)
+ self.type = OFPAT_OUTPUT
+ self.len = self.__len__()
+ def show(self, prefix=''):
+ outstr = prefix + "action_output\n"
+ outstr += ofp_action_output.show(self, prefix)
+ return outstr
+
+action_class_list = (
+ action_copy_ttl_in,
+ action_copy_ttl_out,
+ action_dec_mpls_ttl,
+ action_dec_nw_ttl,
+ action_experimenter,
+ action_group,
+ action_output,
+ action_pop_mpls,
+ action_pop_vlan,
+ action_push_mpls,
+ action_push_vlan,
+ action_set_dl_dst,
+ action_set_dl_src,
+ action_set_mpls_label,
+ action_set_mpls_tc,
+ action_set_mpls_ttl,
+ action_set_nw_dst,
+ action_set_nw_ecn,
+ action_set_nw_src,
+ action_set_nw_tos,
+ action_set_nw_ttl,
+ action_set_queue,
+ action_set_tp_dst,
+ action_set_tp_src,
+ action_set_vlan_pcp,
+ action_set_vlan_vid)
+