summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFan Zhang <roy.fan.zhang@intel.com>2020-05-01 13:06:57 +0100
committerDamjan Marion <dmarion@me.com>2020-05-06 10:25:04 +0000
commitf970a75542e6dca13b9810a42c881cbe5b6c9445 (patch)
tree30a85c8ee9959aa185b9ad815d961daa825ce2ad
parentc72950e811880c22e5b350c4b1cb5e31b0735b4d (diff)
crypto: fix coverity issues
Fix coverity issues in crypto framework and cryptodev engine. Type: fix Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Change-Id: Ib261da0163c8182c803600db22c5a6dad5a19999
-rw-r--r--src/plugins/dpdk/cryptodev/cryptodev.c16
-rw-r--r--src/vnet/crypto/format.c21
2 files changed, 12 insertions, 25 deletions
diff --git a/src/plugins/dpdk/cryptodev/cryptodev.c b/src/plugins/dpdk/cryptodev/cryptodev.c
index 0506ab8373b..39da4d7a3ca 100644
--- a/src/plugins/dpdk/cryptodev/cryptodev.c
+++ b/src/plugins/dpdk/cryptodev/cryptodev.c
@@ -457,8 +457,8 @@ cryptodev_frame_linked_algs_enqueue (vlib_main_t * vm,
cryptodev_op_t **cop;
u32 *bi;
u32 n_enqueue, n_elts;
- cryptodev_key_t *key = 0;
- u32 last_key_index = ~0;
+ cryptodev_key_t *key;
+ u32 last_key_index;
if (PREDICT_FALSE (frame == 0 || frame->n_elts == 0))
return -1;
@@ -485,6 +485,9 @@ cryptodev_frame_linked_algs_enqueue (vlib_main_t * vm,
cop[0]->frame = frame;
cop[0]->n_elts = n_elts;
+ key = pool_elt_at_index (cmt->keys, fe->key_index);
+ last_key_index = fe->key_index;
+
while (n_elts)
{
vlib_buffer_t *b = vlib_get_buffer (vm, bi[0]);
@@ -559,8 +562,8 @@ cryptodev_frame_gcm_enqueue (vlib_main_t * vm,
cryptodev_op_t **cop;
u32 *bi;
u32 n_enqueue = 0, n_elts;
- cryptodev_key_t *key = 0;
- u32 last_key_index = ~0;
+ cryptodev_key_t *key;
+ u32 last_key_index;
if (PREDICT_FALSE (frame == 0 || frame->n_elts == 0))
return -1;
@@ -588,6 +591,9 @@ cryptodev_frame_gcm_enqueue (vlib_main_t * vm,
cop[0]->n_elts = n_elts;
frame->state = VNET_CRYPTO_OP_STATUS_COMPLETED;
+ key = pool_elt_at_index (cmt->keys, fe->key_index);
+ last_key_index = fe->key_index;
+
while (n_elts)
{
vlib_buffer_t *b = vlib_get_buffer (vm, bi[0]);
@@ -1229,7 +1235,7 @@ dpdk_cryptodev_init (vlib_main_t * vm)
u32 n_workers = tm->n_vlib_mains - skip_master;
u32 numa = vm->numa_node;
i32 sess_sz;
- u32 n_cop_elts;
+ u64 n_cop_elts;
u32 eidx;
u32 i;
u8 *name = 0;
diff --git a/src/vnet/crypto/format.c b/src/vnet/crypto/format.c
index b58ab7fceb2..c503ac81663 100644
--- a/src/vnet/crypto/format.c
+++ b/src/vnet/crypto/format.c
@@ -135,30 +135,11 @@ u8 *
format_vnet_crypto_async_op (u8 * s, va_list * args)
{
vnet_crypto_main_t *cm = &crypto_main;
- vnet_crypto_async_op_id_t op = va_arg (*args, int); // vnet_crypto_op_id_t);
+ vnet_crypto_async_op_id_t op = va_arg (*args, vnet_crypto_async_op_id_t);
vnet_crypto_async_op_data_t *otd = cm->async_opt_data + op;
return format (s, "%U-%U", format_vnet_crypto_async_op_type, otd->type,
format_vnet_crypto_async_alg, otd->alg);
-
- vnet_crypto_async_op_id_t opt = va_arg (*args, vnet_crypto_async_op_id_t);
- char *strings[] = {
-#define _(n, s, k, t, a) \
- [VNET_CRYPTO_OP_##n##_TAG##t##_AAD##a##_ENC] = s "-enc", \
- [VNET_CRYPTO_OP_##n##_TAG##t##_AAD##a##_DEC] = s "-dec",
- foreach_crypto_aead_async_alg
-#undef _
-#define _(c, h, s, k ,d) \
- [VNET_CRYPTO_OP_##c##_##h##_TAG##d##_ENC] = s "-enc", \
- [VNET_CRYPTO_OP_##c##_##h##_TAG##d##_DEC] = s "-dec",
- foreach_crypto_link_async_alg
-#undef _
- };
-
- if (opt >= VNET_CRYPTO_ASYNC_OP_N_IDS)
- return format (s, "unknown");
-
- return format (s, "%s", strings[opt]);
}
/*