X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fvxlan-gbp%2Fvxlan_gbp.api;h=13ec50395bc7f82be2834f72c5e2c6b913d7cf4e;hb=4dd4cf4f9;hp=ecb5ba27f18abf3b76136c208108eae11940e015;hpb=61b94c6bc417dbcb11323962b40493e6f7ec2f7e;p=vpp.git diff --git a/src/vnet/vxlan-gbp/vxlan_gbp.api b/src/vnet/vxlan-gbp/vxlan_gbp.api index ecb5ba27f18..13ec50395bc 100644 --- a/src/vnet/vxlan-gbp/vxlan_gbp.api +++ b/src/vnet/vxlan-gbp/vxlan_gbp.api @@ -1,3 +1,4 @@ +/* Hey Emacs use -*- mode: C -*- */ /* * Copyright (c) 2018 Cisco and/or its affiliates. * Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,39 +14,50 @@ * limitations under the License. */ -option version = "1.0.0"; +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; +}; /** \brief Create or delete a VXLAN-GBP tunnel @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param is_add - Use 1 to create the tunnel, 0 to remove it - @param is_ipv6 - Use 0 for IPv4, 1 for IPv6 - @param instance - optional unique custom device instance, else ~0. - @param src_address - Source IP address - @param dst_address - Destination IP address, can be multicast - @param mcast_sw_if_index - Interface for multicast destination - @param encap_vrf_id - Encap route table FIB index - @param decap_next_index - Name of decap next graph node - @param vni - The VXLAN Network Identifier, uint24 - @param sclass - The policy group id */ -define vxlan_gbp_add_del_tunnel +define vxlan_gbp_tunnel_add_del { u32 client_index; u32 context; u8 is_add; - u8 is_ipv6; - u32 instance; /* If non-~0, specifies a custom dev instance */ - u8 src_address[16]; - u8 dst_address[16]; - u32 mcast_sw_if_index; - u32 encap_vrf_id; - u32 decap_next_index; - u32 vni; - u16 sclass; + vl_api_vxlan_gbp_tunnel_t tunnel; }; -define vxlan_gbp_add_del_tunnel_reply +define vxlan_gbp_tunnel_add_del_reply { u32 context; i32 retval; @@ -62,16 +74,7 @@ define vxlan_gbp_tunnel_dump define vxlan_gbp_tunnel_details { u32 context; - u32 sw_if_index; - u32 instance; - u8 src_address[16]; - u8 dst_address[16]; - u32 mcast_sw_if_index; - u32 encap_vrf_id; - u32 decap_next_index; - u32 vni; - u16 sclass; - u8 is_ipv6; + vl_api_vxlan_gbp_tunnel_t tunnel; }; /** \brief Interface set vxlan-bypass request