openssl/doc/internal/man3
Pauli 64954e2f34 Fix race condition & allow operation cache to grow.
This fixes a race condition where the index to the cache location was found
under a read lock and a later write lock set the cache entry.  The issue being
that two threads could get the same location index and then fight each other
over writing the cache entry.  The most likely outcome is a memory leak,
however it would be possible to set up an invalid cache entry.

The operation cache was a fixed sized array, once full an assertion failed.
The other fix here is to convert this to a stack.  The code is simplified and
it avoids a cache overflow condition.

Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14062)
2021-02-07 20:01:50 +10:00
..
cms_add1_signing_cert.pod
evp_generic_fetch.pod Rename OPENSSL_CTX prefix to OSSL_LIB_CTX 2020-10-15 11:59:53 +01:00
evp_keymgmt_newdata.pod Add public API for gettables and settables for keymanagement, signatures and key exchange. 2020-08-12 11:59:43 +10:00
evp_keymgmt_util_export_to_provider.pod Fix race condition & allow operation cache to grow. 2021-02-07 20:01:50 +10:00
evp_pkey_export_to_provider.pod Rename OPENSSL_CTX prefix to OSSL_LIB_CTX 2020-10-15 11:59:53 +01:00
evp_pkey_get1_ED25519.pod Hide ECX_KEY again 2020-09-25 12:12:22 +10:00
OPENSSL_SA.pod
ossl_algorithm_do_all.pod Rename OPENSSL_CTX prefix to OSSL_LIB_CTX 2020-10-15 11:59:53 +01:00
ossl_cmp_asn1_octet_string_set1.pod cmp_util.c: Add OPENSSL_CTX parameter to ossl_cmp_build_cert_chain(), improve its doc 2020-08-21 09:04:12 +02:00
ossl_cmp_certreq_new.pod
ossl_cmp_ctx_set1_caPubs.pod
ossl_cmp_hdr_init.pod Update CMP header file references in internal CMP documentation 2020-08-21 09:04:10 +02:00
ossl_cmp_mock_srv_new.pod Rename OPENSSL_CTX prefix to OSSL_LIB_CTX 2020-10-15 11:59:53 +01:00
ossl_cmp_msg_check_update.pod
ossl_cmp_msg_create.pod Update CMP header file references in internal CMP documentation 2020-08-21 09:04:10 +02:00
ossl_cmp_msg_protect.pod Rename OPENSSL_CTX prefix to OSSL_LIB_CTX 2020-10-15 11:59:53 +01:00
ossl_cmp_pkisi_get_status.pod Use in CMP+CRMF libctx and propq param added to sign/verify/HMAC/decrypt 2020-08-21 09:04:13 +02:00
ossl_cmp_print_log.pod
ossl_cmp_X509_STORE_add1_certs.pod Introduce X509_add_cert[s] simplifying various additions to cert lists 2020-08-12 13:54:37 +02:00
OSSL_DEPRECATED.pod Simplify and clarify doc/internal/man7/deprecation.pod 2020-11-01 05:57:42 +01:00
ossl_DER_w_begin_sequence.pod der: _ossl prefix DER functions 2020-10-01 11:25:12 +10:00
ossl_DER_w_bn.pod der: _ossl prefix DER functions 2020-10-01 11:25:12 +10:00
ossl_DER_w_precompiled.pod der: _ossl prefix DER functions 2020-10-01 11:25:12 +10:00
ossl_ends_with_dirsep.pod Add ossl_is_absolute_path function to detect absolute paths 2020-11-11 16:06:30 +01:00
ossl_init_thread_deregister.pod
ossl_lib_ctx_get_data.pod Update copyright year 2020-10-15 14:10:06 +01:00
ossl_method_construct.pod Rename OPENSSL_CTX prefix to OSSL_LIB_CTX 2020-10-15 11:59:53 +01:00
OSSL_METHOD_STORE.pod Rename OPENSSL_CTX prefix to OSSL_LIB_CTX 2020-10-15 11:59:53 +01:00
ossl_namemap_new.pod Update copyright year 2020-10-15 14:10:06 +01:00
ossl_provider_add_conf_module.pod
ossl_provider_new.pod CORE: Separate OSSL_PROVIDER activation from OSSL_PROVIDER reference 2020-12-17 12:02:08 +01:00
ossl_punycode_decode.pod Update copyright year 2020-10-15 14:10:06 +01:00
ossl_rand_get_entropy.pod doc: Documentation changes for moving the entropy source out of the fips provider 2020-11-20 08:24:21 +10:00
ossl_random_add_conf_module.pod Add a "random" configuration section. 2020-09-23 15:28:29 +10:00
ossl_rsa_get0_all_params.pod Update copyright year 2020-10-15 14:10:06 +01:00
x509v3_cache_extensions.pod Update copyright year 2021-01-28 13:54:57 +01:00