mirror of
https://github.com/openssl/openssl.git
synced 2024-11-27 05:21:51 +08:00
59a783d05a
If two threads both attempt to load the same provider at the same time, they will first both check to see if the provider already exists. If it doesn't then they will both then create new provider objects and call the init function. However only one of the threads will be successful in adding the provider to the store. For the "losing" thread we should still return "success", but we should deinitialise and free the no longer required provider object, and return the object that exists in the store. Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/15854) |
||
---|---|---|
.. | ||
__DECC_INCLUDE_EPILOGUE.H | ||
__DECC_INCLUDE_PROLOGUE.H | ||
asn1.h | ||
bio.h | ||
comp.h | ||
conf.h | ||
constant_time.h | ||
core.h | ||
cryptlib.h | ||
dane.h | ||
deprecated.h | ||
der.h | ||
dso.h | ||
dsoerr.h | ||
endian.h | ||
err.h | ||
ffc.h | ||
ktls.h | ||
namemap.h | ||
nelem.h | ||
numbers.h | ||
o_dir.h | ||
packet.h | ||
param_build_set.h | ||
passphrase.h | ||
property.h | ||
propertyerr.h | ||
provider.h | ||
refcount.h | ||
sha3.h | ||
sizes.h | ||
sm3.h | ||
sockets.h | ||
sslconf.h | ||
symhacks.h | ||
thread_once.h | ||
tlsgroups.h | ||
tsan_assist.h | ||
unicode.h |