-define vxlan_gpe_tunnel_dump
-{
- u32 client_index;
- u32 context;
- u32 sw_if_index;
-};
-
-define vxlan_gpe_tunnel_details
-{
- u32 context;
- u32 sw_if_index;
- u8 local[16];
- u8 remote[16];
- u32 vni;
- u8 protocol;
- u32 encap_vrf_id;
- u32 decap_vrf_id;
- u8 is_ipv6;
-};
-
-/** \brief add or delete locator_set
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param locator_set_name - locator name
- @param locator_num - number of locators
- @param locators - LISP locator records
- Structure of one locator record is as follows:
-
- define locator_t {
- u32 sw_if_index;
- u8 priority;
- u8 weight;
- }
-*/
-define lisp_add_del_locator_set
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 locator_set_name[64];
- u32 locator_num;
- u8 locators[0];
-};
-
-/** \brief Reply for locator_set add/del
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
- @param ls_index - locator set index
-*/
-define lisp_add_del_locator_set_reply
-{
- u32 context;
- i32 retval;
- u32 ls_index;
-};
-
-/** \brief add or delete locator for locator_set
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param locator_set_name - name of locator_set to add/del locator
- @param sw_if_index - index of the interface
- @param priority - priority of the lisp locator
- @param weight - weight of the lisp locator
-*/
-define lisp_add_del_locator
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 locator_set_name[64];
- u32 sw_if_index;
- u8 priority;
- u8 weight;
-};
-
-/** \brief Reply for locator add/del
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_add_del_locator_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief add or delete lisp eid-table
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param eid_type:
- 0 : ipv4
- 1 : ipv6
- 2 : mac
- @param eid - EID can be ip4, ip6 or mac
- @param prefix_len - prefix len
- @param locator_set_name - name of locator_set to add/del eid-table
- @param vni - virtual network instance
- @param key_id
- HMAC_NO_KEY 0
- HMAC_SHA_1_96 1
- HMAC_SHA_256_128 2
- @param key - secret key
-*/
-define lisp_add_del_local_eid
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 eid_type;
- u8 eid[16];
- u8 prefix_len;
- u8 locator_set_name[64];
- u32 vni;
- u16 key_id;
- u8 key[64];
-};
-
-/** \brief Reply for local_eid add/del
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_add_del_local_eid_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief add or delete lisp gpe tunnel
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param eid_type -
- 0 : ipv4
- 1 : ipv6
- 2 : mac
- @param rmt_eid - remote eid
- @param lcl_eid - local eid
- @param rmt_len - remote prefix len
- @param lcl_len - local prefix len
- @param vni - virtual network identifier
- @param dp_table - vrf/bridge domain id
- @param loc_num - number of locators
- @param lcl_locs - array of local locators
- @param rmt_locs - array of remote locators
- @param action - negative action when 0 locators configured
-*/
-define lisp_gpe_add_del_fwd_entry
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 eid_type;
- u8 rmt_eid[16];
- u8 lcl_eid[16];
- u8 rmt_len;
- u8 lcl_len;
- u32 vni;
- u32 dp_table;
- u32 loc_num;
- u8 lcl_locs[loc_num];
- u8 rmt_locs[loc_num];
- u8 action;
-};
-
-/** \brief Reply for gpe_fwd_entry add/del
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_gpe_add_del_fwd_entry_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief Add/delete map server
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero; delete otherwise
- @param is_ipv6 - if non-zero the address is ipv6, else ipv4
- @param ip_address - map server IP address
-*/
-define lisp_add_del_map_server
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 is_ipv6;
- u8 ip_address[16];
-};
-
-/** \brief Reply for lisp_add_del_map_server
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_add_del_map_server_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief add or delete map-resolver
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param is_ipv6 - if non-zero the address is ipv6, else ipv4
- @param ip_address - array of address bytes
-*/
-define lisp_add_del_map_resolver
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 is_ipv6;
- u8 ip_address[16];
-};
-
-/** \brief Reply for map_resolver add/del
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_add_del_map_resolver_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief enable or disable lisp-gpe protocol
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_en - enable protocol if non-zero, else disable
-*/
-define lisp_gpe_enable_disable
-{
- u32 client_index;
- u32 context;
- u8 is_en;
-};
-
-/** \brief Reply for gpe enable/disable
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_gpe_enable_disable_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief enable or disable LISP feature
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_en - enable protocol if non-zero, else disable
-*/
-define lisp_enable_disable
-{
- u32 client_index;
- u32 context;
- u8 is_en;
-};
-
-/** \brief Reply for gpe enable/disable
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_enable_disable_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief add or delete gpe_iface
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
-*/
-define lisp_gpe_add_del_iface
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 is_l2;
- u32 dp_table;
- u32 vni;
-};
-
-/** \brief Reply for gpe_iface add/del
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_gpe_add_del_iface_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief configure or disable LISP PITR node
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param ls_name - locator set name
- @param is_add - add locator set if non-zero, else disable pitr
-*/
-define lisp_pitr_set_locator_set
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 ls_name[64];
-};
-
-/** \brief Reply for lisp_pitr_set_locator_set
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_pitr_set_locator_set_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief Get state of LISP RLOC probing
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
-*/
-define show_lisp_rloc_probe_state
-{
- u32 client_index;
- u32 context;
-};
-
-/** \brief Reply for show_lisp_rloc_probe_state
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
- @param is_enabled - state of RLOC probing
-*/
-define show_lisp_rloc_probe_state_reply
-{
- u32 context;
- i32 retval;
- u8 is_enabled;
-};
-
-/** \brief enable/disable LISP RLOC probing
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_enable - enable if non-zero; disable otherwise
-*/
-define lisp_rloc_probe_enable_disable
-{
- u32 client_index;
- u32 context;
- u8 is_enabled;
-};
-
-/** \brief Reply for lisp_rloc_probe_enable_disable
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_rloc_probe_enable_disable_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief enable/disable LISP map-register
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_enable - enable if non-zero; disable otherwise
-*/
-define lisp_map_register_enable_disable
-{
- u32 client_index;
- u32 context;
- u8 is_enabled;
-};
-
-/** \brief Reply for lisp_map_register_enable_disable
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_map_register_enable_disable_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief Get state of LISP map-register
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
-*/
-define show_lisp_map_register_state
-{
- u32 client_index;
- u32 context;
-};
-
-/** \brief Reply for show_lisp_map_register_state
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define show_lisp_map_register_state_reply
-{
- u32 context;
- i32 retval;
- u8 is_enabled;
-};
-
-/** \brief set LISP map-request mode. Based on configuration VPP will send
- src/dest or just normal destination map requests.
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param mode - new map-request mode. Supported values are:
- 0 - destination only
- 1 - source/destaination
-*/
-define lisp_map_request_mode
-{
- u32 client_index;
- u32 context;
- u8 mode;
-};
-
-/** \brief Reply for lisp_map_request_mode
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_map_request_mode_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief Request for LISP map-request mode
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
-*/
-define show_lisp_map_request_mode
-{
- u32 client_index;
- u32 context;
-};
-
-/** \brief Reply for show_lisp_map_request_mode
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
- @param mode - map-request mode
-*/
-define show_lisp_map_request_mode_reply
-{
- u32 context;
- i32 retval;
- u8 mode;
-};
-
-/** \brief add or delete remote static mapping
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param is_src_dst - flag indicating src/dst based routing policy
- @param del_all - if set, delete all remote mappings
- @param vni - virtual network instance
- @param action - negative map-reply action
- @param eid_type -
- 0 : ipv4
- 1 : ipv6
- 2 : mac
- @param deid - dst EID
- @param seid - src EID, valid only if is_src_dst is enabled
- @param rloc_num - number of remote locators
- @param rlocs - remote locator records
- Structure of remote locator:
-
- define rloc_t {
- u8 is_ip4;
- u8 priority;
- u8 weight;
- u8 addr[16];
- }
-*/
-define lisp_add_del_remote_mapping
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 is_src_dst;
- u8 del_all;
- u32 vni;
- u8 action;
- u8 eid_type;
- u8 eid[16];
- u8 eid_len;
- u8 seid[16];
- u8 seid_len;
- u32 rloc_num;
- u8 rlocs[0];
-};
-
-/** \brief Reply for lisp_add_del_remote_mapping
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_add_del_remote_mapping_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief add or delete LISP adjacency adjacency
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param vni - virtual network instance
- @param eid_type -
- 0 : ipv4
- 1 : ipv6
- 2 : mac
- @param reid - remote EID
- @param leid - local EID
-*/
-define lisp_add_del_adjacency
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u32 vni;
- u8 eid_type;
- u8 reid[16];
- u8 leid[16];
- u8 reid_len;
- u8 leid_len;
-};
-
-/** \brief Reply for lisp_add_del_adjacency
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-define lisp_add_del_adjacency_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief add or delete map request itr rlocs
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add address if non-zero, else delete
- @param locator_set_name - locator set name
-*/
-define lisp_add_del_map_request_itr_rlocs
-{
- u32 client_index;
- u32 context;
- u8 is_add;
- u8 locator_set_name[64];
-};
-
-/** \brief Reply for lisp_add_del_map_request_itr_rlocs
- @param context - returned sender context, to match reply w/ request
- @param retval - return code
-*/
-
-define lisp_add_del_map_request_itr_rlocs_reply
-{
- u32 context;
- i32 retval;
-};
-
-/** \brief map/unmap vni/bd_index to vrf
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param is_add - add or delete mapping
- @param dp_table - virtual network id/bridge domain index
- @param vrf - vrf
-*/
-define lisp_eid_table_add_del_map