diff options
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/crypto_sw_scheduler/main.c | 2 | ||||
-rw-r--r-- | src/plugins/dpdk/cryptodev/cryptodev.c | 4 | ||||
-rw-r--r-- | src/plugins/unittest/crypto_test.c | 51 |
3 files changed, 19 insertions, 38 deletions
diff --git a/src/plugins/crypto_sw_scheduler/main.c b/src/plugins/crypto_sw_scheduler/main.c index 81f13912b6b..dc97ce937d9 100644 --- a/src/plugins/crypto_sw_scheduler/main.c +++ b/src/plugins/crypto_sw_scheduler/main.c @@ -401,7 +401,7 @@ crypto_sw_scheduler_process_link (vlib_main_t *vm, } static_always_inline int -convert_async_crypto_id (vnet_crypto_async_op_id_t async_op_id, u32 *crypto_op, +convert_async_crypto_id (vnet_crypto_op_id_t async_op_id, u32 *crypto_op, u32 *auth_op_or_aad_len, u16 *digest_len, u8 *is_enc) { switch (async_op_id) diff --git a/src/plugins/dpdk/cryptodev/cryptodev.c b/src/plugins/dpdk/cryptodev/cryptodev.c index 4f533406fca..c60f9c886ff 100644 --- a/src/plugins/dpdk/cryptodev/cryptodev.c +++ b/src/plugins/dpdk/cryptodev/cryptodev.c @@ -111,7 +111,7 @@ prepare_linked_xform (struct rte_crypto_sym_xform *xforms, xform_auth->type = RTE_CRYPTO_SYM_XFORM_AUTH; xforms->next = xforms + 1; - switch (key->async_alg) + switch (key->alg) { #define _(a, b, c, d, e) \ case VNET_CRYPTO_ALG_##a##_##d##_TAG##e: \ @@ -251,7 +251,7 @@ cryptodev_check_supported_vnet_alg (vnet_crypto_key_t *key) if (key->is_link) { - switch (key->async_alg) + switch (key->alg) { #define _(a, b, c, d, e) \ case VNET_CRYPTO_ALG_##a##_##d##_TAG##e: \ diff --git a/src/plugins/unittest/crypto_test.c b/src/plugins/unittest/crypto_test.c index eb3f9d05166..0254e1a29b8 100644 --- a/src/plugins/unittest/crypto_test.c +++ b/src/plugins/unittest/crypto_test.c @@ -220,9 +220,10 @@ restore_engines (u32 * engs) if (engs[i] != ~0) { - ce = vec_elt_at_index (cm->engines, engs[i]); - od->active_engine_index_simple = engs[i]; - cm->ops_handlers[i] = ce->ops_handlers[i]; + vnet_crypto_handler_type_t t = VNET_CRYPTO_HANDLER_TYPE_SIMPLE; + ce = vec_elt_at_index (cm->engines, engs[i]); + od->active_engine_index[t] = engs[i]; + cm->opt_data[i].handlers[t] = ce->ops[i].handlers[t]; } } @@ -247,12 +248,13 @@ save_current_engines (u32 * engs) for (i = 1; i < VNET_CRYPTO_N_OP_IDS; i++) { vnet_crypto_op_data_t *od = &cm->opt_data[i]; - if (od->active_engine_index_simple != ~0) + if (od->active_engine_index[VNET_CRYPTO_HANDLER_TYPE_SIMPLE]) { /* save engine index */ - engs[i] = od->active_engine_index_simple; - od->active_engine_index_simple = ce - cm->engines; - cm->ops_handlers[i] = ce->ops_handlers[i]; + vnet_crypto_handler_type_t t = VNET_CRYPTO_HANDLER_TYPE_SIMPLE; + engs[i] = od->active_engine_index[t]; + od->active_engine_index[t] = ce - cm->engines; + cm->opt_data[i].handlers[t] = ce->ops[i].handlers[t]; } } @@ -289,7 +291,7 @@ test_crypto_incremental (vlib_main_t * vm, crypto_test_main_t * tm, { r = rv[i]; int t; - ad = vec_elt_at_index (cm->algs, r->alg); + ad = cm->algs + r->alg; for (t = 0; t < VNET_CRYPTO_OP_N_TYPES; t++) { vnet_crypto_op_id_t id = ad->op_by_type[t]; @@ -345,7 +347,7 @@ test_crypto_incremental (vlib_main_t * vm, crypto_test_main_t * tm, { r = rv[i]; int t; - ad = vec_elt_at_index (cm->algs, r->alg); + ad = cm->algs + r->alg; for (t = 0; t < VNET_CRYPTO_OP_N_TYPES; t++) { vnet_crypto_op_id_t id = ad->op_by_type[t]; @@ -442,7 +444,7 @@ test_crypto_static (vlib_main_t * vm, crypto_test_main_t * tm, { r = rv[i]; int t; - ad = vec_elt_at_index (cm->algs, r->alg); + ad = cm->algs + r->alg; for (t = 0; t < VNET_CRYPTO_OP_N_TYPES; t++) { vnet_crypto_op_id_t id = ad->op_by_type[t]; @@ -648,29 +650,8 @@ test_crypto_static (vlib_main_t * vm, crypto_test_main_t * tm, static u32 test_crypto_get_key_sz (vnet_crypto_alg_t alg) { - switch (alg) - { -#define _(n, s, l) \ - case VNET_CRYPTO_ALG_##n: \ - return l; - foreach_crypto_cipher_alg - foreach_crypto_aead_alg -#undef _ - case VNET_CRYPTO_ALG_HMAC_MD5: - case VNET_CRYPTO_ALG_HMAC_SHA1: - return 20; - case VNET_CRYPTO_ALG_HMAC_SHA224: - return 28; - case VNET_CRYPTO_ALG_HMAC_SHA256: - return 32; - case VNET_CRYPTO_ALG_HMAC_SHA384: - return 48; - case VNET_CRYPTO_ALG_HMAC_SHA512: - return 64; - default: - return 0; - } - return 0; + vnet_crypto_main_t *cm = &crypto_main; + return cm->algs[alg].key_length; } static clib_error_t * @@ -702,7 +683,7 @@ test_crypto (vlib_main_t * vm, crypto_test_main_t * tm) else vec_add1 (static_tests, r); - ad = vec_elt_at_index (cm->algs, r->alg); + ad = cm->algs + r->alg; for (i = 0; i < VNET_CRYPTO_OP_N_TYPES; i++) { @@ -836,7 +817,7 @@ test_crypto_perf (vlib_main_t * vm, crypto_test_main_t * tm) u32 n_buffers, n_alloc = 0, warmup_rounds, rounds; u32 *buffer_indices = 0; vnet_crypto_op_t *ops1 = 0, *ops2 = 0, *op1, *op2; - vnet_crypto_alg_data_t *ad = vec_elt_at_index (cm->algs, tm->alg); + vnet_crypto_alg_data_t *ad = cm->algs + tm->alg; vnet_crypto_key_index_t key_index = ~0; u8 key[64]; int buffer_size = vlib_buffer_get_default_data_size (vm); |