openssl/crypto/store
Richard Levitte e1eafe8c87 "Reserve" the method store when constructing methods
Introducing the concept of reserving the store where a number of
provided operation methods are to be stored.

This avoids racing when constructing provided methods, which is
especially pertinent when multiple threads are trying to fetch the
same method, or even any implementation for the same given operation
type.

This introduces a |biglock| in OSSL_METHOD_STORE, which is separate
from the |lock| which is used for more internal and finer grained
locking.

Fixes #18152

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/18153)
2022-07-20 07:28:17 +01:00
..
build.info STORE: Deprecate legacy / ENGINE functions 2020-09-03 17:48:32 +02:00
store_err.c err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
store_init.c Update copyright year 2021-04-08 13:04:41 +01:00
store_lib.c Fix Coverity 1503329 use after free 2022-05-06 18:21:22 +10:00
store_local.h Add deprecation macro for 3.1 and deprecate OPENSSL_LH_stats 2022-06-22 09:36:14 +02:00
store_meth.c "Reserve" the method store when constructing methods 2022-07-20 07:28:17 +01:00
store_register.c Defined out MUTEX attributes not available on NonStop SPT Threads. 2021-07-02 12:33:45 +10:00
store_result.c store_result: Add fallback for fetching the keymgmt from the provider of the store 2022-06-28 17:54:56 +02:00
store_strings.c Update copyright year 2020-10-15 14:10:06 +01:00