openssl/providers/implementations
wangcheng 4c41aa4b33 Add CTX copy function for EVP_MD to optimize the performance of EVP_MD_CTX_copy_ex.
1. Add OSSL_FUNC_digest_copyctx_fn function for EVP_MD, which is used to copy algctx from the old EVP_MD_CTX to the new one.

2. Add implementation of OSSL_FUNC_digest_copyctx_fn function for default providers.

3. Modify EVP_MD_CTX_copy_ex: When the fetched digest is the same in in and out contexts, use the copy function to copy the members in EVP_MD_CTX if the OSSL_FUNC_digest_copyctx_fn function exists. Otherwise, use the previous method to copy.

4. Add documentation for OSSL_FUNC_digest_copyctx function in doc/man7/provider-digest.pod.

5. Add testcase.

Fixes #25703

Signed-off-by: wangcheng <bangwangnj@163.com>

Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/25726)
2024-11-20 14:12:53 +01:00
..
asymciphers Add utility function ossl_param_is_empty() 2024-10-09 11:13:46 +02:00
ciphers Add utility function ossl_param_is_empty() 2024-10-09 11:13:46 +02:00
digests Add CTX copy function for EVP_MD to optimize the performance of EVP_MD_CTX_copy_ex. 2024-11-20 14:12:53 +01:00
encode_decode Avoid undefined behaviour with the <ctype.h> functions. 2024-10-10 20:47:48 +02:00
exchange Add utility function ossl_param_is_empty() 2024-10-09 11:13:46 +02:00
include/prov Add CTX copy function for EVP_MD to optimize the performance of EVP_MD_CTX_copy_ex. 2024-11-20 14:12:53 +01:00
kdfs Add utility function ossl_param_is_empty() 2024-10-09 11:13:46 +02:00
kem first cut at KEM & key management skeletons 2024-10-21 11:47:16 +01:00
keymgmt first cut at KEM & key management skeletons 2024-10-21 11:47:16 +01:00
macs Add utility function ossl_param_is_empty() 2024-10-09 11:13:46 +02:00
rands Add utility function ossl_param_is_empty() 2024-10-09 11:13:46 +02:00
signature Add utility function ossl_param_is_empty() 2024-10-09 11:13:46 +02:00
storemgmt Avoid undefined behaviour with the <ctype.h> functions. 2024-10-10 20:47:48 +02:00
build.info