MCPcopy Create free account
hub / github.com/F-Stack/f-stack / openssl_aesni_ctx_clone

Function openssl_aesni_ctx_clone

dpdk/drivers/crypto/openssl/rte_openssl_pmd.c:456–474  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

454
455#if (OPENSSL_VERSION_NUMBER >= 0x30000000L && OPENSSL_VERSION_NUMBER < 0x30200000L)
456static int openssl_aesni_ctx_clone(EVP_CIPHER_CTX **dest,
457 struct openssl_session *sess)
458{
459 /* OpenSSL versions 3.0.0 <= V < 3.2.0 have no dupctx() implementation
460 * for AES-GCM and AES-CCM. In this case, we have to create new empty
461 * contexts and initialise, as we did the original context.
462 */
463 if (sess->auth.algo == RTE_CRYPTO_AUTH_AES_GMAC)
464 sess->aead_algo = RTE_CRYPTO_AEAD_AES_GCM;
465
466 if (sess->cipher.direction == RTE_CRYPTO_CIPHER_OP_ENCRYPT)
467 return openssl_set_sess_aead_enc_param(sess, sess->aead_algo,
468 sess->auth.digest_length, sess->cipher.key.data,
469 dest);
470 else
471 return openssl_set_sess_aead_dec_param(sess, sess->aead_algo,
472 sess->auth.digest_length, sess->cipher.key.data,
473 dest);
474}
475#endif
476
477/** Set session cipher parameters */

Callers 1

get_local_cipher_ctxFunction · 0.85

Tested by

no test coverage detected