vec_len (locator_set_name));
vec_free (locator_set_name);
- mp->locator_num = vec_len (locators);
+ mp->locator_num = clib_host_to_net_u32 (vec_len (locators));
if (locators)
clib_memcpy (mp->locators, locators,
(sizeof (ls_locator_t) * vec_len (locators)));
mp->eid_type = eid->type;
lisp_eid_put_vat (mp->eid, eid->addr, eid->type);
- mp->rloc_num = vec_len (rlocs);
+ mp->rloc_num = clib_host_to_net_u32 (vec_len (rlocs));
clib_memcpy (mp->rlocs, rlocs, (sizeof (rloc_t) * vec_len (rlocs)));
vec_free (rlocs);
vnet_lisp_add_del_locator_set_args_t _a, *a = &_a;
locator_t locator;
ls_locator_t *ls_loc;
- u32 ls_index = ~0;
+ u32 ls_index = ~0, locator_num;
u8 *locator_name = NULL;
int i;
a->name = locator_name;
a->is_add = mp->is_add;
a->local = 1;
+ locator_num = clib_net_to_host_u32 (mp->locator_num);
memset (&locator, 0, sizeof (locator));
- for (i = 0; i < mp->locator_num; i++)
+ for (i = 0; i < locator_num; i++)
{
ls_loc = &((ls_locator_t *) mp->locators)[i];
VALIDATE_SW_IF_INDEX (ls_loc);
if (rv)
goto send_reply;
- rlocs = unformat_lisp_locs (mp->rlocs, mp->rloc_num);
+ rlocs = unformat_lisp_locs (mp->rlocs, clib_net_to_host_u32 (mp->rloc_num));
if (0 == rlocs)
goto send_reply;
mp->eid_type, mp->eid, mp->eid_len, mp->seid, mp->seid_len,
mp->is_src_dst);
- rloc_num = mp->rloc_num;
+ rloc_num = clib_net_to_host_u32 (mp->rloc_num);
if (0 == rloc_num)
s = format (s, "action %d", mp->action);
s = format (s, "locator-set %s ", mp->locator_set_name);
- loc_num = mp->locator_num;
+ loc_num = clib_net_to_host_u32 (mp->locator_num);
locs = (ls_locator_t *) mp->locators;
for (i = 0; i < loc_num; i++)