diff options
author | Dave Barach <dave@barachs.net> | 2016-10-12 17:32:39 -0400 |
---|---|---|
committer | Dave Barach <dave@barachs.net> | 2016-10-12 17:32:56 -0400 |
commit | 1946a12a52deddfb501d2bdf320ff280cb42a076 (patch) | |
tree | 0301cf76c49f81ed4a58e26587f24bddfdac898b | |
parent | 1e66d5c54b81b8d6290153f1b3c2b021c4b62fad (diff) |
Fix coverity warnings, VPP-486
Change-Id: I7a14d9a28514cdb49f65fab1b120b53239fed7e3
Signed-off-by: Dave Barach <dave@barachs.net>
-rw-r--r-- | vnet/vnet/classify/flow_classify_node.c | 2 | ||||
-rw-r--r-- | vnet/vnet/ip/ip6_neighbor.c | 2 | ||||
-rw-r--r-- | vpp/app/vpe_cli.c | 3 | ||||
-rw-r--r-- | vpp/vpp-api/api.c | 8 |
4 files changed, 11 insertions, 4 deletions
diff --git a/vnet/vnet/classify/flow_classify_node.c b/vnet/vnet/classify/flow_classify_node.c index aa3bce5467a..5c9e0820a26 100644 --- a/vnet/vnet/classify/flow_classify_node.c +++ b/vnet/vnet/classify/flow_classify_node.c @@ -267,7 +267,7 @@ flow_classify_inline (vlib_main_t * vm, t->sw_if_index = vnet_buffer(b0)->sw_if_index[VLIB_RX]; t->next_index = next0; t->table_index = t0 ? t0 - vcm->tables : ~0; - t->offset = e0 ? vnet_classify_get_offset (t0, e0): ~0; + t->offset = (t0 && e0) ? vnet_classify_get_offset (t0, e0): ~0; } /* Verify speculative enqueue, maybe switch current next frame */ diff --git a/vnet/vnet/ip/ip6_neighbor.c b/vnet/vnet/ip/ip6_neighbor.c index fdec2d4a0f2..97e7e84ac42 100644 --- a/vnet/vnet/ip/ip6_neighbor.c +++ b/vnet/vnet/ip/ip6_neighbor.c @@ -1705,7 +1705,7 @@ ip6_neighbor_sw_interface_add_del (vnet_main_t * vnm, a->seed = random_default_seed(); /* for generating random interface ids */ - a->randomizer = 0x1119194911191949; + a->randomizer = 0x1119194911191949ULL; a->randomizer = random_u64 ((u32 *)&a->randomizer); a->initial_adverts_count = MAX_INITIAL_RTR_ADVERTISEMENTS ; diff --git a/vpp/app/vpe_cli.c b/vpp/app/vpe_cli.c index 3b24c26f3e6..38bf843dd32 100644 --- a/vpp/app/vpe_cli.c +++ b/vpp/app/vpe_cli.c @@ -72,8 +72,7 @@ virtual_ip_cmd_fn_command_fn (vlib_main_t * vm, format_unformat_error, input); } } - if (vec_len (mac_addrs) == 0 || - vec_len (next_hops) == 0 || vec_len (mac_addrs) != vec_len (next_hops)) + if (vec_len (mac_addrs) == 0 || vec_len (mac_addrs) != vec_len (next_hops)) goto barf; /* Create / delete special interface route /32's */ diff --git a/vpp/vpp-api/api.c b/vpp/vpp-api/api.c index 84e4d5d550a..3840b820aa9 100644 --- a/vpp/vpp-api/api.c +++ b/vpp/vpp-api/api.c @@ -1597,6 +1597,14 @@ static void /* Detect the set of worker threads */ uword *p = hash_get_mem (tm->thread_registrations_by_name, "workers"); + + if (p == 0) + { + clib_warning ("worker thread registration AWOL !!"); + rv = VNET_API_ERROR_INVALID_VALUE_2; + goto done; + } + vlib_thread_registration_t *tr = (vlib_thread_registration_t *) p[0]; int worker_thread_first = tr->first_index; int worker_thread_count = tr->count; |