From 18d2d6bd4a2c968707e912356a0ee02496fba2fc Mon Sep 17 00:00:00 2001 From: Dave Barach Date: Mon, 17 Feb 2020 09:13:26 -0500 Subject: misc: fix coverity warnings Add an ALWAYS_ASSERT (...) macro, to (a) shut up coverity, and (b) check the indicated condition in production images. As in: p = hash_get(...); ALWAYS_ASSERT(p) /* was ASSERT(p) */ elt = pool_elt_at_index(pool, p[0]); This may not be the best way to handle a specific case, but failure to check return values at all followed by e.g. a pointer dereference isn't ok. Type: fix Ticket: VPP-1837 Signed-off-by: Dave Barach Change-Id: Ia97c641cefcfb7ea7d77ea5a55ed4afea0345acb (cherry picked from commit 47d41ad62c5d6008e72d2e9c137cf8f49ca86353) --- src/vnet/geneve/encap.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/vnet/geneve/encap.c') diff --git a/src/vnet/geneve/encap.c b/src/vnet/geneve/encap.c index af52fd24543..2859a9ae652 100644 --- a/src/vnet/geneve/encap.c +++ b/src/vnet/geneve/encap.c @@ -131,7 +131,7 @@ geneve_encap_inline (vlib_main_t * vm, next0 = t0->next_dpo.dpoi_next_node; } - ASSERT (t0 != NULL); + ALWAYS_ASSERT (t0 != NULL); vnet_buffer (b[0])->ip.adj_index[VLIB_TX] = t0->next_dpo.dpoi_index; @@ -145,7 +145,7 @@ geneve_encap_inline (vlib_main_t * vm, next1 = t1->next_dpo.dpoi_next_node; } - ASSERT (t1 != NULL); + ALWAYS_ASSERT (t1 != NULL); vnet_buffer (b[1])->ip.adj_index[VLIB_TX] = t1->next_dpo.dpoi_index; @@ -378,6 +378,9 @@ geneve_encap_inline (vlib_main_t * vm, /* Note: change to always set next0 if it may be set to drop */ next0 = t0->next_dpo.dpoi_next_node; } + + ALWAYS_ASSERT (t0 != NULL); + vnet_buffer (b[0])->ip.adj_index[VLIB_TX] = t0->next_dpo.dpoi_index; /* Apply the rewrite string. $$$$ vnet_rewrite? */ -- cgit 1.2.3-korg