On Tue, Jun 12, 2012 at 12:32:05AM -0700, Ben Pfaff wrote: > OFPFW_DL_SRC and OFPFW_DL_DST don't exist in OpenFlow 1.1. Replace them > by the correct enums. > > Most of the change here is due to respacing since DL_VLAN_PCP is one > character wider than any previous name. > > This doesn't fix a real bug because these constants didn't have any users > in the tree.
Follow-up patch for Open Flow 1.2: From: Simon Horman <ho...@verge.net.au> openflow-1.2.h Add OFPFW12_* definitions. OFPFW_NW_SRC_ALL and OFPFW_NW_DST_ALL differ between Open Flow 1.0 and 1.2, otherwise enum ofp_flow_wildcards is the same for both Open Flow versions. Open Flow 1.1 is different again and is dealt with separately. Signed-off-by: Simon Horman <ho...@verge.net.au> --- include/openflow/openflow-1.2.h | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/include/openflow/openflow-1.2.h b/include/openflow/openflow-1.2.h index bb55881..ec0a308 100644 --- a/include/openflow/openflow-1.2.h +++ b/include/openflow/openflow-1.2.h @@ -55,6 +55,38 @@ #include "openflow/openflow-1.1.h" +/* This is subtly different to enum ofp_flow_wildcards */ +enum ofp12_flow_wildcards { + OFPFW12_IN_PORT = 1 << 0, /* Switch input port. */ + OFPFW12_DL_VLAN = 1 << 1, /* VLAN. */ + OFPFW12_DL_SRC = 1 << 2, /* Ethernet source address. */ + OFPFW12_DL_DST = 1 << 3, /* Ethernet destination address. */ + OFPFW12_DL_TYPE = 1 << 4, /* Ethernet frame type. */ + OFPFW12_NW_PROTO = 1 << 5, /* IP protocol. */ + OFPFW12_TP_SRC = 1 << 6, /* TCP/UDP source port. */ + OFPFW12_TP_DST = 1 << 7, /* TCP/UDP destination port. */ + + /* IP source address wildcard bit count. 0 is exact match, 1 ignores the + * LSB, 2 ignores the 2 least-significant bits, ..., 32 and higher wildcard + * the entire field. This is the *opposite* of the usual convention where + * e.g. /24 indicates that 8 bits (not 24 bits) are wildcarded. */ + OFPFW12_NW_SRC_SHIFT = 8, + OFPFW12_NW_SRC_BITS = 6, + OFPFW12_NW_SRC_MASK = ((1 << OFPFW12_NW_SRC_BITS) - 1) << + OFPFW12_NW_SRC_SHIFT, + OFPFW12_NW_SRC_ALL = 32 << OFPFW12_NW_SRC_SHIFT, + + /* IP destination address wildcard bit count. Same format as source. */ + OFPFW12_NW_DST_SHIFT = 14, + OFPFW12_NW_DST_BITS = 6, + OFPFW12_NW_DST_MASK = ((1 << OFPFW12_NW_DST_BITS) - 1) << + OFPFW12_NW_DST_SHIFT, + OFPFW12_NW_DST_ALL = 32 << OFPFW12_NW_DST_SHIFT, + + /* Wildcard all fields. */ + OFPFW12_ALL = ((1 << 20) - 1) +}; + /* OpenFlow 1.2 specific message types, in addition to the common message * types. */ enum ofp12_type { -- 1.7.10.2.484.gcd07cc5 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev