u8 *key = 0;
u32 key_id = 0;
- memset (&eid, 0, sizeof (eid));
- memset (a, 0, sizeof (*a));
+ clib_memset (&eid, 0, sizeof (eid));
+ clib_memset (a, 0, sizeof (*a));
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
;
else if (unformat (line_input, "locator-set %_%v%_", &locator_set_name))
{
+ vec_terminate_c_string (locator_set_name);
p = hash_get_mem (lcm->locator_set_index_by_name, locator_set_name);
if (!p)
{
if (!unformat_user (input, unformat_line_input, line_input))
return 0;
- memset (&eid, 0, sizeof (eid));
- memset (&rloc, 0, sizeof (rloc));
+ clib_memset (&eid, 0, sizeof (eid));
+ clib_memset (&rloc, 0, sizeof (rloc));
while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT)
{
if (!is_add)
{
vnet_lisp_add_del_adjacency_args_t _a, *a = &_a;
- memset (a, 0, sizeof (a[0]));
+ clib_memset (a, 0, sizeof (a[0]));
gid_address_copy (&a->reid, &eid);
if (vnet_lisp_add_del_adjacency (a))
{
/* add as static remote mapping, i.e., not authoritative and infinite
* ttl */
- rv = vnet_lisp_add_del_mapping (&eid, rlocs, action, 0, ~0, is_add,
- 1 /* is_static */ , 0);
+ if (is_add)
+ {
+ vnet_lisp_add_del_mapping_args_t _map_args, *map_args = &_map_args;
+ clib_memset (map_args, 0, sizeof (map_args[0]));
+ gid_address_copy (&map_args->eid, &eid);
+ map_args->action = action;
+ map_args->is_static = 1;
+ map_args->authoritative = 0;
+ map_args->ttl = ~0;
+ rv = vnet_lisp_add_mapping (map_args, rlocs, NULL, NULL);
+ }
+ else
+ rv = vnet_lisp_del_mapping (&eid, NULL);
if (rv)
clib_warning ("failed to %s remote mapping!", is_add ? "add" : "delete");
if (!unformat_user (input, unformat_line_input, line_input))
return 0;
- memset (&reid, 0, sizeof (reid));
- memset (&leid, 0, sizeof (leid));
+ clib_memset (&reid, 0, sizeof (reid));
+ clib_memset (&leid, 0, sizeof (leid));
leid_ippref = &gid_address_ippref (&leid);
reid_ippref = &gid_address_ippref (&reid);
goto done;
}
- memset (a, 0, sizeof (a[0]));
+ clib_memset (a, 0, sizeof (a[0]));
gid_address_copy (&a->leid, &leid);
gid_address_copy (&a->reid, &reid);
a->is_add = is_add;
clib_warning ("No locator set specified!");
goto done;
}
+ vec_terminate_c_string (locator_set_name);
rv = vnet_lisp_pitr_set_locator_set (locator_set_name, is_add);
if (0 != rv)
{
mapping_t *m;
locator_set_t *ls;
u8 *tmp_str = 0;
+ u8 status = lcm->flags & LISP_FLAG_PITR_MODE;
- vlib_cli_output (vm, "%=20s%=16s",
- "pitr", lcm->lisp_pitr ? "locator-set" : "");
+ vlib_cli_output (vm, "%=20s%=16s", "pitr", status ? "locator-set" : "");
- if (!lcm->lisp_pitr)
+ if (!status)
{
vlib_cli_output (vm, "%=20s", "disable");
return 0;
u8 filter = 0;
clib_error_t *error = NULL;
- memset (&eid, 0, sizeof (eid));
+ clib_memset (&eid, 0, sizeof (eid));
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
}
vlib_cli_output (vm, "%-35s%-20s%-30s%-20s%-s",
- "EID", "type", "locators", "ttl", "autoritative");
+ "EID", "type", "locators", "ttl", "authoritative");
if (print_all)
{
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
- return 0;
+ return clib_error_return (0, "expected enable | disable");
while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT)
{
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
- return 0;
+ return clib_error_return (0, "expected enable | disable");
while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT)
{
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
- return 0;
+ return clib_error_return (0, "expected enable | disable");
while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT)
{
u32 ls_index = 0;
int rv = 0;
- memset (&locator, 0, sizeof (locator));
- memset (a, 0, sizeof (a[0]));
+ clib_memset (&locator, 0, sizeof (locator));
+ clib_memset (a, 0, sizeof (a[0]));
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
&locator.weight))
{
locator.local = 1;
+ locator.state = 1;
vec_add1 (locators, locator);
}
else
vnet_lisp_add_del_locator_set_args_t _a, *a = &_a;
u32 ls_index = 0;
- memset (&locator, 0, sizeof (locator));
- memset (a, 0, sizeof (a[0]));
+ clib_memset (&locator, 0, sizeof (locator));
+ clib_memset (a, 0, sizeof (a[0]));
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
}
}
+ vec_terminate_c_string (locator_set_name);
a->is_add = is_add;
a->locator_set_name = locator_set_name;
rv = vnet_lisp_add_del_mreq_itr_rlocs (a);