+option version = "1.1.0";
+import "vnet/ip/ip_types.api";
+
+enum vxlan_gbp_api_tunnel_mode
+{
+ VXLAN_GBP_API_TUNNEL_MODE_L2,
+ VXLAN_GBP_API_TUNNEL_MODE_L3,
+};
+
+/** \brief Definition of a VXLAN GBP tunnel
+ @param instance - optional unique custom device instance, else ~0.
+ @param src - Source IP address
+ @param dst - Destination IP address, can be multicast
+ @param mcast_sw_if_index - Interface for multicast destination
+ @param encap_table_id - Encap route table
+ @param vni - The VXLAN Network Identifier, uint24
+ @param sw_ifindex - Ignored in add message, set in details
+*/
+typedef vxlan_gbp_tunnel
+{
+ u32 instance;
+ vl_api_address_t src;
+ vl_api_address_t dst;
+ u32 mcast_sw_if_index;
+ u32 encap_table_id;
+ u32 vni;
+ u32 sw_if_index;
+ vl_api_vxlan_gbp_api_tunnel_mode_t mode;
+};