aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/lisp-cp/lisp_api.c
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2017-01-29 16:42:20 -0800
committerDave Barach <openvpp@barachs.net>2017-01-30 13:49:07 +0000
commit2743cc40de083389e594b7c871ba9c90169358f7 (patch)
treee9ffdd87d03d3a723f4635f202ddffc290b993c2 /src/vnet/lisp-cp/lisp_api.c
parent5842c78b20329e4072328fa3b71a2411dbbcebfc (diff)
Fix LISP Coverity warnings
Change-Id: Iaca2ff453872e638ee83b11fc16472e44deb9a7e Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/vnet/lisp-cp/lisp_api.c')
-rw-r--r--src/vnet/lisp-cp/lisp_api.c21
1 files changed, 15 insertions, 6 deletions
diff --git a/src/vnet/lisp-cp/lisp_api.c b/src/vnet/lisp-cp/lisp_api.c
index 767f4c6f869..6f34d02c407 100644
--- a/src/vnet/lisp-cp/lisp_api.c
+++ b/src/vnet/lisp-cp/lisp_api.c
@@ -422,7 +422,9 @@ vl_api_show_lisp_use_petr_t_handler (vl_api_show_lisp_use_petr_t * mp)
mapping_t *m;
locator_set_t *ls = 0;
int rv = 0;
- locator_t *loc;
+ locator_t *loc = 0;
+ u8 status = 0;
+ gid_address_t addr;
q = vl_api_client_index_to_input_queue (mp->client_index);
if (q == 0)
@@ -430,8 +432,9 @@ vl_api_show_lisp_use_petr_t_handler (vl_api_show_lisp_use_petr_t * mp)
return;
}
- rmp->status = lcm->flags & LISP_FLAG_USE_PETR;
- if (rmp->status)
+ memset (&addr, 0, sizeof (addr));
+ status = lcm->flags & LISP_FLAG_USE_PETR;
+ if (status)
{
m = pool_elt_at_index (lcm->mapping_pool, lcm->petr_map_index);
if (~0 != m->locator_set_index)
@@ -439,12 +442,18 @@ vl_api_show_lisp_use_petr_t_handler (vl_api_show_lisp_use_petr_t * mp)
ls =
pool_elt_at_index (lcm->locator_set_pool, m->locator_set_index);
loc = pool_elt_at_index (lcm->locator_pool, ls->locator_indices[0]);
- gid_address_put (rmp->address, &loc->address);
- rmp->is_ip4 = (gid_address_ip_version (&loc->address) == IP4);
+ gid_address_copy (&addr, &loc->address);
}
}
- REPLY_MACRO (VL_API_SHOW_LISP_USE_PETR_REPLY);
+ /* *INDENT-OFF* */
+ REPLY_MACRO2 (VL_API_SHOW_LISP_USE_PETR_REPLY,
+ {
+ rmp->status = status;
+ gid_address_put (rmp->address, &addr);
+ rmp->is_ip4 = (gid_address_ip_version (&addr) == IP4);
+ });
+ /* *INDENT-ON* */
}
static void