Merge remote-tracking branch 'origin/master' into ovn
[cascardo/ovs.git] / lib / meta-flow.h
index 265f066..78e34c5 100644 (file)
@@ -1567,10 +1567,26 @@ struct mf_subfield {
  * value" contains NXM_OF_VLAN_TCI[0..11], then one could access the
  * corresponding data in value.be16[7] as the bits in the mask htons(0xfff). */
 union mf_subvalue {
+    /* Access to full data. */
     uint8_t u8[16];
     ovs_be16 be16[8];
     ovs_be32 be32[4];
     ovs_be64 be64[2];
+
+    /* Convenient access to just least-significant bits in various forms. */
+    struct {
+        ovs_be64 dummy_integer;
+        ovs_be64 integer;
+    };
+    struct {
+        uint8_t dummy_mac[10];
+        uint8_t mac[6];
+    };
+    struct {
+        ovs_be32 dummy_ipv4[3];
+        ovs_be32 ipv4;
+    };
+    struct in6_addr ipv6;
 };
 BUILD_ASSERT_DECL(sizeof(union mf_value) == sizeof (union mf_subvalue));