35 if (
unformat (line_input,
"vni %d", &vni))
67 .path =
"show one adjacencies",
68 .short_help =
"show one adjacencies",
91 else if (
unformat (line_input,
"del"))
114 is_add ?
"add" :
"delete");
121 .path =
"one map-server",
122 .short_help =
"one map-server add|del <ip>",
138 u8 *locator_set_name = 0;
139 u32 locator_set_index = 0, map_index = 0;
158 else if (
unformat (line_input,
"del"))
162 else if (
unformat (line_input,
"vni %d", &vni))
164 else if (
unformat (line_input,
"secret-key %_%v%_", &key))
169 else if (
unformat (line_input,
"locator-set %_%v%_", &locator_set_name))
179 locator_set_index = p[0];
196 if (key && (0 == key_id))
213 is_add ?
"add" :
"delete");
217 if (locator_set_name)
227 .path =
"one eid-table",
228 .short_help =
"one eid-table add/del [vni <vni>] eid <eid> " 229 "locator-set <locator-set> [key <secret-key> key-id sha1|sha256 ]",
239 u8 is_add = 1, is_l2 = 0;
252 else if (
unformat (line_input,
"vni %d", &vni))
254 else if (
unformat (line_input,
"vrf %d", &dp_id))
256 else if (
unformat (line_input,
"bd %d", &dp_id))
274 .path =
"one eid-table map",
275 .short_help =
"one eid-table map [del] vni <vni> vrf <vrf> | bd <bdi>",
288 u8 hw_addr[6], bd = 0;
290 u32 hw_addr_set = 0,
ip_set = 0, is_add = 1;
306 else if (
unformat (line_input,
"del"))
308 else if (
unformat (line_input,
"bd %d", &bd))
317 if (!
ip_set || (!hw_addr_set && is_add))
329 clib_warning (
"Failed to %s ndp entry!", is_add ?
"add" :
"delete");
339 .short_help =
"one ndp [del] bd <bd> mac <mac> ip <ipv6>",
352 u8 hw_addr[6], bd = 0;
354 u32 hw_addr_set = 0,
ip_set = 0, is_add = 1;
370 else if (
unformat (line_input,
"del"))
372 else if (
unformat (line_input,
"bd %d", &bd))
381 if (!
ip_set || (!hw_addr_set && is_add))
393 clib_warning (
"Failed to %s l2 arp entry!", is_add ?
"add" :
"delete");
402 .path =
"one l2 arp",
403 .short_help =
"one l2 arp [del] bd <bd> mac <mac> ip <ipv4>",
438 .path =
"show one l2 arp entries",
439 .short_help =
"Show ONE L2 ARP entries",
474 .path =
"show one ndp entries",
475 .short_help =
"Show ONE NDP entries",
495 u8 is_add = 1, del_all = 0;
496 locator_t rloc, *rlocs = 0, *curr_rloc = 0;
499 u32 vni, action = ~0, p, w;
511 if (
unformat (line_input,
"del-all"))
513 else if (
unformat (line_input,
"del"))
515 else if (
unformat (line_input,
"add"))
519 else if (
unformat (line_input,
"vni %u", &vni))
523 else if (
unformat (line_input,
"p %d w %d", &p, &w))
528 (
"No RLOC configured for setting priority/weight!");
531 curr_rloc->priority = p;
532 curr_rloc->weight = w;
544 curr_rloc = &rlocs[
vec_len (rlocs) - 1];
546 else if (
unformat (line_input,
"action %U",
556 if (!del_all && !eid_set)
564 if (is_add && (~0 == action) && 0 ==
vec_len (rlocs))
596 map_args->
action = action;
606 clib_warning (
"failed to %s remote mapping!", is_add ?
"add" :
"delete");
616 .path =
"one remote-mapping",
618 "one remote-mapping add|del [del-all] vni <vni> " 619 "eid <est-eid> [action <no-action|natively-forward|" 620 "send-map-request|drop>] rloc <dst-locator> p <prio> w <weight> " 621 "[rloc <dst-locator> ... ]",
637 ip_prefix_t *reid_ippref, *leid_ippref;
641 u8 reid_set = 0, leid_set = 0;
658 else if (
unformat (line_input,
"add"))
660 else if (
unformat (line_input,
"reid %U",
671 else if (
unformat (line_input,
"vni %u", &vni))
676 else if (
unformat (line_input,
"leid %U",
694 if (!reid_set || !leid_set)
705 clib_warning (
"remote and local EIDs are of different types!");
715 clib_warning (
"failed to %s adjacency!", is_add ?
"add" :
"delete");
724 .path =
"one adjacency",
725 .short_help =
"one adjacency add|del vni <vni> reid <remote-eid> " 757 if (_MR_MODE_MAX == mr_mode)
773 .path =
"one map-request mode",
774 .short_help =
"one map-request mode dst-only|src-dst",
788 return format (0,
"dst-only");
790 return format (0,
"src-dst");
807 .path =
"show one map-request mode",
808 .short_help =
"show one map-request mode",
830 .path =
"show one map-resolvers",
831 .short_help =
"show one map-resolvers",
841 u8 locator_name_set = 0;
842 u8 *locator_set_name = 0;
854 if (
unformat (line_input,
"ls %_%v%_", &locator_set_name))
855 locator_name_set = 1;
856 else if (
unformat (line_input,
"disable"))
865 if (!locator_name_set)
876 is_add ?
"add" :
"delete");
887 .path =
"one nsh-mapping",
888 .short_help =
"one nsh-mapping [del] ls <locator-set-name>",
901 vlib_cli_output (vm,
"map register fallback threshold value: %d", val);
907 .path =
"show one map-register fallback-threshold",
908 .short_help =
"show one map-register fallback-threshold",
930 if (
unformat (line_input,
"%d", &val))
952 .path =
"one map-register fallback-threshold",
953 .short_help =
"one map-register fallback-threshold <count>",
963 u8 locator_name_set = 0;
964 u8 *locator_set_name = 0;
976 if (
unformat (line_input,
"ls %_%v%_", &locator_set_name))
977 locator_name_set = 1;
978 else if (
unformat (line_input,
"disable"))
987 if (!locator_name_set)
997 is_add ?
"add" :
"delete");
1001 if (locator_set_name)
1010 .short_help =
"one pitr [disable] ls <locator-set-name>",
1023 u8 status = lcm->
flags & LISP_FLAG_PITR_MODE;
1025 vlib_cli_output (vm,
"%=20s%=16s",
"pitr", status ?
"locator-set" :
"");
1035 tmp_str =
format (0,
"N/A");
1048 tmp_str =
format (0,
"N/A");
1062 .path =
"show one pitr",
1063 .short_help =
"Show pitr",
1106 gid, type, loc, ttl, aut);
1110 s =
format (s,
"%55s%v\n",
"", loc);
1140 else if (
unformat (line_input,
"local"))
1142 else if (
unformat (line_input,
"remote"))
1153 "EID",
"type",
"locators",
"ttl",
"authoritative");
1160 if (mapit->pitr_set || mapit->nsh_set)
1163 locator_set_t * ls = pool_elt_at_index (lcm->locator_set_pool,
1164 mapit->locator_set_index);
1165 if (filter && !((1 == filter && ls->local) ||
1166 (2 == filter && !ls->local)))
1178 if ((
u32) ~ 0 == mi)
1183 mapit->locator_set_index);
1185 if (filter && !((1 == filter && ls->
local) ||
1186 (2 == filter && !ls->
local)))
1203 .path =
"show one eid-table",
1204 .short_help =
"Shows EID table",
1225 if (
unformat (line_input,
"enable"))
1230 else if (
unformat (line_input,
"disable"))
1256 .path =
"one pitr mode",
1257 .short_help =
"one pitr mode [enable|disable]",
1279 if (
unformat (line_input,
"enable"))
1284 else if (
unformat (line_input,
"disable"))
1310 .path =
"one petr mode",
1311 .short_help =
"one petr mode [enable|disable]",
1332 if (
unformat (line_input,
"enable"))
1337 else if (
unformat (line_input,
"disable"))
1363 .path =
"one xtr mode",
1364 .short_help =
"one xtr mode [enable|disable]",
1384 if (
unformat (line_input,
"enable"))
1389 else if (
unformat (line_input,
"disable"))
1416 .short_help =
"one [enable|disable]",
1437 if (
unformat (line_input,
"%u", &ttl))
1462 .path =
"one map-register ttl",
1463 .short_help =
"one map-register ttl",
1481 .path =
"show one map-register ttl",
1482 .short_help =
"show one map-register ttl",
1504 if (
unformat (line_input,
"enable"))
1509 else if (
unformat (line_input,
"disable"))
1535 .path =
"one map-register",
1536 .short_help =
"one map-register [enable|disable]",
1557 if (
unformat (line_input,
"enable"))
1562 else if (
unformat (line_input,
"disable"))
1588 .path =
"one rloc-probe",
1589 .short_help =
"one rloc-probe [enable|disable]",
1606 msg =
format (msg,
"feature: %U\ngpe: %U\n",
1615 .path =
"show one status",
1616 .short_help =
"show one status",
1629 uword *vni_table = 0;
1644 else if (
unformat (line_input,
"l3"))
1680 .path =
"show one eid-table map",
1681 .short_help =
"show one eid-table l2|l3",
1697 u8 *locator_set_name = 0;
1712 if (
unformat (line_input,
"add %_%v%_", &locator_set_name))
1714 else if (
unformat (line_input,
"del %_%v%_", &locator_set_name))
1716 else if (
unformat (line_input,
"iface %U p %d w %d",
1732 a->
name = locator_set_name;
1741 is_add ?
"add" :
"delete");
1746 if (locator_set_name)
1754 .path =
"one locator-set",
1755 .short_help =
"one locator-set add/del <name> [iface <iface-name> " 1756 "p <priority> w <weight>]",
1771 u8 *locator_set_name = 0;
1772 u8 locator_set_name_set = 0;
1788 else if (
unformat (line_input,
"del"))
1790 else if (
unformat (line_input,
"locator-set %_%v%_", &locator_set_name))
1791 locator_set_name_set = 1;
1792 else if (
unformat (line_input,
"iface %U p %d w %d",
1807 if (!locator_set_name_set)
1814 a->
name = locator_set_name;
1830 .path =
"one locator",
1831 .short_help =
"one locator add/del locator-set <name> iface <iface-name> " 1832 "p <priority> w <weight>",
1848 "Priority",
"Weight");
1857 msg = format (msg,
"%s", lsit->name);
1861 msg = format (msg,
"<%s-%d>",
"remote", lsit - lcm->locator_set_pool);
1867 msg = format (msg,
"%16s",
" ");
1888 .path =
"show one locator-set",
1889 .short_help =
"Shows locator-sets",
1901 u8 is_add = 1, addr_set = 0;
1915 else if (
unformat (line_input,
"del"))
1938 is_add ?
"add" :
"delete");
1948 .path =
"one map-resolver",
1949 .short_help =
"one map-resolver add/del <ip_address>",
1962 u8 *locator_set_name = 0;
1975 else if (
unformat (line_input,
"add %_%v%_", &locator_set_name))
1991 is_add ?
"add" :
"delete");
2003 .path =
"one map-request itr-rlocs",
2004 .short_help =
"one map-request itr-rlocs add/del <locator_set_name>",
2033 .path =
"show one map-request itr-rlocs",
2034 .short_help =
"Shows map-request itr-rlocs",
2057 else if (
unformat (line_input,
"disable"))
2075 is_add ?
"add" :
"delete");
2085 .path =
"one use-petr",
2086 .short_help =
"one use-petr [disable] <petr-ip>",
2099 u8 use_petr = lcm->
flags & LISP_FLAG_USE_PETR;
2110 tmp_str =
format (0,
"N/A");
2123 tmp_str =
format (0,
"N/A");
2137 .path =
"show one petr",
2138 .short_help =
"Show petr",
2160 .path =
"show one map-servers",
2161 .short_help =
"show one map servers",
2174 msg =
format (msg,
"%s\n", is_enabled ?
"enabled" :
"disabled");
2182 .path =
"show one map-register state",
2183 .short_help =
"show one map-register state",
2196 msg =
format (msg,
"%s\n", is_enabled ?
"enabled" :
"disabled");
2204 .path =
"show one rloc state",
2205 .short_help =
"show one RLOC state",
2222 .path =
"show one statistics status",
2223 .short_help =
"show ONE statistics enable/disable status",
2237 "[src-EID, dst-EID] [loc-rloc, rmt-rloc] count bytes\n");
2256 .path =
"show one statistics details",
2257 .short_help =
"show ONE statistics",
2276 if (
unformat (line_input,
"enable"))
2278 else if (
unformat (line_input,
"disable"))
2294 .path =
"one statistics",
2295 .short_help =
"enable/disable ONE statistics collecting",
2311 .path =
"one statistics flush",
2312 .short_help =
"Flush ONE statistics",
2327 vlib_cli_output (vm,
"P-ITR: %s\n", pitr_mode ?
"enabled" :
"disabled");
2328 vlib_cli_output (vm,
"P-ETR: %s\n", petr_mode ?
"enabled" :
"disabled");
2335 .path =
"show one modes",
2336 .short_help =
"show one modes",
static clib_error_t * lisp_stats_flush_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_ip_version(_a)
boost::asio::ip::address ip_address_t
u8 vnet_lisp_get_pitr_mode(void)
#define gid_address_type(_a)
static clib_error_t * lisp_show_pitr_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
lisp_api_l2_arp_entry_t * vnet_lisp_l2_arp_entries_get_by_bd(u32 bd)
lisp_msmr_t * map_resolvers
static clib_error_t * lisp_enable_disable_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
void ip_set(ip46_address_t *dst, void *src, u8 is_ip4)
clib_memset(h->entries, 0, sizeof(h->entries[0]) *entries)
static u8 * format_eid_entry(u8 *s, va_list *args)
u8 vnet_lisp_get_map_request_mode(void)
#define ip_prefix_len(_a)
#define vec_terminate_c_string(V)
(If necessary) NULL terminate a vector containing a c-string.
uword unformat_ip_address(unformat_input_t *input, va_list *args)
#define vec_add1(V, E)
Add 1 element to end of vector (unspecified alignment).
static clib_error_t * lisp_add_del_locator_set_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_add_del_adjacency_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Handler for add/del adjacency CLI.
static clib_error_t * lisp_show_map_request_mode_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_add_del_local_eid_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
unformat_function_t unformat_vnet_sw_interface
static clib_error_t * lisp_add_del_l2_arp_entry_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
vnet_api_error_t vnet_lisp_stats_enable_disable(u8 enable)
int vnet_lisp_add_mapping(vnet_lisp_add_del_mapping_args_t *a, locator_t *rlocs, u32 *res_map_index, u8 *is_updated)
Adds/updates mapping.
void ip_address_set(ip_address_t *dst, const void *src, u8 version)
uword unformat_hmac_key_id(unformat_input_t *input, va_list *args)
#define ip_prefix_version(_a)
u8 vnet_lisp_stats_enable_disable_state(void)
format_function_t format_vnet_sw_if_index_name
u8 vnet_lisp_map_register_state_get(void)
u8 vnet_lisp_get_petr_mode(void)
int vnet_lisp_set_map_request_mode(u8 mode)
int vnet_lisp_add_del_adjacency(vnet_lisp_add_del_adjacency_args_t *a)
Adds adjacency or removes forwarding entry associated to remote mapping.
uword unformat_negative_mapping_action(unformat_input_t *input, va_list *args)
lisp_msmr_t * map_servers
int vnet_lisp_enable_disable_petr_mode(u8 is_enabled)
int vnet_lisp_enable_disable_pitr_mode(u8 is_enabled)
#define pool_foreach(VAR, POOL, BODY)
Iterate through pool.
static clib_error_t * lisp_show_one_modes_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_show_map_servers_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_map_register_fallback_threshold_show_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_show_rloc_probe_state_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
int vnet_lisp_flush_stats(void)
static clib_error_t * lisp_show_ndp_entries_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_show_eid_table_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define clib_error_return(e, args...)
int vnet_lisp_eid_table_map(u32 vni, u32 dp_id, u8 is_l2, u8 is_add)
lisp_api_ndp_entry_t * vnet_lisp_ndp_entries_get_by_bd(u32 bd)
static clib_error_t * lisp_enable_disable_petr_mode_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static lisp_cp_main_t * vnet_lisp_cp_get_main()
static clib_error_t * lisp_nsh_set_locator_set_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_cp_show_locator_sets_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_enable_disable_pitr_mode_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
u32 petr_map_index
Proxy ETR map index used for 'use-petr'.
clib_error_t * vnet_lisp_enable_disable(u8 is_enable)
int vnet_lisp_pitr_set_locator_set(u8 *locator_set_name, u8 is_add)
#define pool_elt_at_index(p, i)
Returns pointer to element at given index.
u8 vnet_lisp_rloc_probe_state_get(void)
counter_t packets
packet counter
static clib_error_t * lisp_add_del_map_server_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_arp_ndp_ip(_a)
u8 * format_negative_mapping_action(u8 *s, va_list *args)
static clib_error_t * lisp_map_request_mode_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_mac(_a)
int vnet_lisp_add_del_local_mapping(vnet_lisp_add_del_mapping_args_t *a, u32 *map_index_result)
Add/update/delete mapping to/in/from map-cache.
void gid_address_free(gid_address_t *a)
lisp_api_stats_t * vnet_lisp_get_stats(void)
uword unformat_gid_address(unformat_input_t *input, va_list *args)
u8 * format_gid_address(u8 *s, va_list *args)
static clib_error_t * lisp_map_register_enable_disable_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
u8 vnet_lisp_get_xtr_mode(void)
static clib_error_t * lisp_add_del_ndp_entry_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_ippref(_a)
lisp_adjacency_t * vnet_lisp_adjacencies_get_by_vni(u32 vni)
Returns vector of adjacencies.
u32 * vnet_lisp_ndp_bds_get(void)
static clib_error_t * lisp_stats_enable_disable_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
int vnet_lisp_add_del_mreq_itr_rlocs(vnet_lisp_add_del_mreq_itr_rloc_args_t *a)
static clib_error_t * lisp_add_del_mreq_itr_rlocs_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_arp_bd
#define vec_free(V)
Free vector's memory (no header).
#define clib_warning(format, args...)
int vnet_lisp_map_register_enable_disable(u8 is_enable)
u32 vnet_lisp_map_register_fallback_threshold_get(void)
static clib_error_t * lisp_add_del_map_resolver_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
uword unformat_mac_address(unformat_input_t *input, va_list *args)
static clib_error_t * lisp_show_map_resolvers_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_eid_table_map_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
lisp_gpe_main_t lisp_gpe_main
LISP-GPE global state.
static clib_error_t * lisp_show_adjacencies_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define VLIB_CLI_COMMAND(x,...)
int vnet_lisp_enable_disable_xtr_mode(u8 is_enabled)
struct _gid_address_t gid_address_t
u8 * format_vnet_lisp_gpe_status(u8 *s, va_list *args)
Format LISP-GPE status.
int vnet_lisp_add_del_map_server(ip_address_t *addr, u8 is_add)
u8 * format_ip_address(u8 *s, va_list *args)
int vnet_lisp_clear_all_remote_adjacencies(void)
static u8 * format_lisp_status(u8 *s, va_list *args)
locator_set_t * locator_set_pool
static clib_error_t * lisp_show_stats_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_ndp_bd
int vnet_lisp_rloc_probe_enable_disable(u8 is_enable)
static clib_error_t * lisp_add_del_remote_mapping_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Handler for add/del remote mapping CLI.
static clib_error_t * lisp_pitr_set_locator_set_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_show_eid_table_map_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_map_register_fallback_threshold_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
u64 gid_dictionary_lookup(gid_dictionary_t *db, gid_address_t *key)
uword unformat_ip_prefix(unformat_input_t *input, va_list *args)
static clib_error_t * lisp_rloc_probe_enable_disable_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
int vnet_lisp_map_register_fallback_threshold_set(u32 value)
counter_t bytes
byte counter
int vnet_lisp_add_del_locator_set(vnet_lisp_add_del_locator_set_args_t *a, u32 *ls_result)
static clib_error_t * lisp_show_l2_arp_entries_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_ip(_a)
static clib_error_t * lisp_show_mreq_itr_rlocs_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_show_status_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_vni(_a)
#define vec_len(v)
Number of elements in vector (rvalue-only, NULL tolerant)
#define hash_foreach_pair(p, v, body)
Iterate over hash pairs.
static clib_error_t * lisp_map_register_show_ttl_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
int vnet_lisp_del_mapping(gid_address_t *eid, u32 *res_map_index)
Removes a mapping.
u32 * vnet_lisp_l2_arp_bds_get(void)
int vnet_lisp_add_del_locator(vnet_lisp_add_del_locator_set_args_t *a, locator_set_t *ls, u32 *ls_result)
u8 ip_address_max_len(u8 version)
uword * locator_set_index_by_name
int vnet_lisp_nsh_set_locator_set(u8 *locator_set_name, u8 is_add)
void gid_address_copy(gid_address_t *dst, gid_address_t *src)
static clib_error_t * lisp_show_map_register_state_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
u8 * format_mac_address(u8 *s, va_list *args)
#define hash_get_mem(h, key)
static clib_error_t * lisp_enable_disable_xtr_mode_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_show_petr_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
vl_api_gbp_vxlan_tunnel_mode_t mode
int vnet_lisp_add_del_map_resolver(vnet_lisp_add_del_map_resolver_args_t *a)
static u8 * format_lisp_map_request_mode(u8 *s, va_list *args)
int vnet_lisp_add_del_l2_arp_ndp_entry(gid_address_t *key, u8 *mac, u8 is_add)
static clib_error_t * lisp_use_petr_set_locator_set_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define vec_foreach(var, vec)
Vector iterator.
static clib_error_t * lisp_map_register_set_ttl_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define gid_address_arp_ip4(_a)
static clib_error_t * lisp_add_del_locator_in_set_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * lisp_show_stats_details_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
int vnet_lisp_map_register_set_ttl(u32 ttl)
u8 * format_fid_address(u8 *s, va_list *args)
u32 vnet_lisp_map_register_get_ttl(void)
int vnet_lisp_use_petr(ip_address_t *ip, u8 is_add)
Configure Proxy-ETR.
void vlib_cli_output(vlib_main_t *vm, char *fmt,...)