aboutsummaryrefslogtreecommitdiff
path: root/lib/flow.h
diff options
context:
space:
mode:
authorBen Pfaff <blp@nicira.com>2011-01-23 18:44:44 -0800
committerBen Pfaff <blp@nicira.com>2011-01-27 21:08:35 -0800
commit36956a7d33c9ee204fcb184484a5aaacbd9ecef8 (patch)
treef62a4d17e6941697bf59520a2068176d1ea3b904 /lib/flow.h
parent704a1e09e9b31ea39ca41c028c7c6aaf2482283a (diff)
datapath: Convert odp_flow_key to use Netlink attributes instead.
One of the goals for Open vSwitch is to decouple kernel and userspace software, so that either one can be upgraded or rolled back independent of the other. To do this in full generality, it must be possible to change the kernel's idea of the flow key separately from the userspace version. In turn, that means that flow keys must become variable-length. This commit makes that change using Netlink attribute sequences. This commit does not actually make userspace flexible enough to handle changes in the kernel flow key structure, because userspace doesn't yet have enough information to do that intelligently. Upcoming commits will fix that. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'lib/flow.h')
-rw-r--r--lib/flow.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/flow.h b/lib/flow.h
index 966f1d68..06da995a 100644
--- a/lib/flow.h
+++ b/lib/flow.h
@@ -35,6 +35,10 @@ struct ofpbuf;
#define FLOW_N_REGS 4
BUILD_ASSERT_DECL(FLOW_N_REGS <= NXM_NX_MAX_REGS);
+/* Used for struct flow's dl_type member for frames that have no Ethernet
+ * type, that is, pure 802.2 frames. */
+#define FLOW_DL_TYPE_NONE 0x5ff
+
struct flow {
ovs_be64 tun_id; /* Encapsulating tunnel ID. */
uint32_t regs[FLOW_N_REGS]; /* Registers. */