+/**
+ * tunnel mode
+ */
+enumflag tunnel_flags : u8
+{
+ /**
+ * the tunnel's MTU tracks the MTU of its destination
+ * Currently NOT IMPLEMENTATION (this is a API place-holder)
+ */
+ TUNNEL_API_FLAG_TRACK_MTU = 0x1,
+};
+
+/**
+ * An IP{v4,v6} tunnel.
+ */
+typedef tunnel
+{
+ /** If non-~0, specifies a custom dev instance */
+ u32 instance;
+ /** Tunnel source and destination address */
+ vl_api_address_t src;
+ vl_api_address_t dst;
+ /** ignored on create, set in details/dump */
+ vl_api_interface_index_t sw_if_index;
+ /** The table ID in which the source and destination addresses are valid */
+ u32 table_id;
+ vl_api_tunnel_encap_decap_flags_t encap_decap_flags;
+ vl_api_tunnel_mode_t mode;
+ vl_api_tunnel_flags_t flags;
+ /* DSCP value for the tunnel encap, ignored if ECNAP_COPY_DSCP flag is set */
+ vl_api_ip_dscp_t dscp;
+ /* TTL=0 is considered 255 */
+ u8 hop_limit;
+};
+