tunnel_id oxm location in spec file is adjusted, and loci files are updated according to the change.
diff --git a/c_gen/c_match.py b/c_gen/c_match.py
index 7fd6a21..aada0cd 100644
--- a/c_gen/c_match.py
+++ b/c_gen/c_match.py
@@ -290,6 +290,7 @@
OF_OXM_INDEX_IPV6_ND_TLL = 33, /* Target link-layer for ND. */
OF_OXM_INDEX_MPLS_LABEL = 34, /* MPLS label. */
OF_OXM_INDEX_MPLS_TC = 35, /* MPLS TC. */
+ OF_OXM_INDEX_TUNNEL_ID = 38, /* Logical Port Metadata. */
OF_OXM_INDEX_BSN_IN_PORTS_128 = 36,
OF_OXM_INDEX_BSN_LAG_ID = 37,
diff --git a/c_gen/match.py b/c_gen/match.py
index d9fdee5..908a0e4 100644
--- a/c_gen/match.py
+++ b/c_gen/match.py
@@ -396,6 +396,15 @@
order=601,
),
+ tunnel_id = dict(
+ name="tunnel_id",
+ m_type="uint64_t",
+ print_type="PRIu64",
+ conditions="",
+ takes_mask_in_spec=True,
+ order=700,
+ ),
+
bsn_in_ports_128 = dict(
name="bsn_in_ports_128",
m_type="of_bitmap_128_t",
diff --git a/c_gen/templates/loci_show.h b/c_gen/templates/loci_show.h
index 909df71..c9c0705 100644
--- a/c_gen/templates/loci_show.h
+++ b/c_gen/templates/loci_show.h
@@ -386,6 +386,7 @@
#define LOCI_SHOW_u32_entry_count(writer, cookie, val) LOCI_SHOW_u32(writer, cookie, val)
#define LOCI_SHOW_u32_num_aux(writer, cookie, val) LOCI_SHOW_u32(writer, cookie, val)
#define LOCI_SHOW_u64_checksum(writer, cookie, val) LOCI_SHOW_u64(writer, cookie, val)
+#define LOCI_SHOW_u64_tunnel_id(writer, cookie, val) LOCI_SHOW_u64(writer, cookie, val)
#define LOCI_SHOW_u32_bsn_egr_port_group_id(writer, cookie, val) LOCI_SHOW_u32(writer, cookie, val)
#define LOCI_SHOW_u32_bsn_udf0(writer, cookie, val) LOCI_SHOW_u32(writer, cookie, val)
#define LOCI_SHOW_u32_bsn_udf1(writer, cookie, val) LOCI_SHOW_u32(writer, cookie, val)
diff --git a/openflow_input/oxm-1.2 b/openflow_input/oxm-1.2
index 4eed2ef..9ee3817 100644
--- a/openflow_input/oxm-1.2
+++ b/openflow_input/oxm-1.2
@@ -432,13 +432,3 @@
uint16_t value_mask;
};
-struct of_oxm_tunnel_id : of_oxm {
- uint32_t type_len == 0x80004c08;
- uint64_t value;
-};
-
-struct of_oxm_tunnel_id_masked : of_oxm {
- uint32_t type_len == 0x80004d10;
- uint64_t value;
- uint64_t value_mask;
-};
diff --git a/openflow_input/standard-1.3 b/openflow_input/standard-1.3
index 19940ac..a94e16b 100644
--- a/openflow_input/standard-1.3
+++ b/openflow_input/standard-1.3
@@ -2119,3 +2119,18 @@
uint32_t flow_removed_mask_equal_master;
uint32_t flow_removed_mask_slave;
};
+
+////////////////////////////////////////////////////////////////
+// OXMs introduced to 1.3
+////////////////////////////////////////////////////////////////
+
+struct of_oxm_tunnel_id : of_oxm {
+ uint32_t type_len == 0x80004c08;
+ uint64_t value;
+};
+
+struct of_oxm_tunnel_id_masked : of_oxm {
+ uint32_t type_len == 0x80004d10;
+ uint64_t value;
+ uint64_t value_mask;
+};