openssl/include/internal
Richard Levitte 5a29b6286f CORE: query for operations only once per provider (unless no_store is true)
When a desired algorithm wasn't available, we didn't register anywhere
that an attempt had been made, with the result that next time the same
attempt was made, the whole process would be done again.

To avoid this churn, we register a bit for each operation that has
been queried in the libcrypto provider object, and test it before
trying the same query and method construction loop again.

If course, if the provider has told us not to cache, we don't register
this bit.

Fixes #11814

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/11842)
2020-05-19 11:02:41 +02:00
..
__DECC_INCLUDE_EPILOGUE.H
__DECC_INCLUDE_PROLOGUE.H
bio.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
comp.h
conf.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
constant_time.h s390x assembly pack: process x25519 and x448 non-canonical values 2019-11-05 13:53:04 +01:00
core.h CORE: query for operations only once per provider (unless no_store is true) 2020-05-19 11:02:41 +02:00
cryptlib.h Maintain strict type discipline between the core and providers 2020-05-16 17:10:03 +01:00
dane.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
deprecated.h Update copyright year 2020-04-23 13:55:52 +01:00
der.h PROV: Add the beginning of a DER writing library 2020-04-07 11:16:56 +02:00
dso.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
dsoerr.h Update source files for deprecation at 3.0 2019-11-07 11:37:25 +01:00
err.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
evp.h EVP & TLS: Add necessary EC_KEY data extraction functions, and use them 2020-04-08 15:30:25 +02:00
ffc.h Rename FIPS_MODE to FIPS_MODULE 2020-04-28 15:37:37 +02:00
ktls.h Add support for in-kernel TLS (KTLS) on FreeBSD. 2019-10-31 10:24:32 +00:00
namemap.h CORE: ossl_namemap_add_names(): new function to add multiple names 2019-11-29 20:42:12 +01:00
nelem.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
numbers.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
o_dir.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
packet.h Update copyright year 2020-04-23 13:55:52 +01:00
param_build_set.h Add EVP_PKEY_gettable_params support for accessing EVP_PKEY key data fields 2020-04-01 15:51:18 +10:00
property.h Add default property API's to enable and test for fips 2020-05-02 14:17:54 +10:00
propertyerr.h Fix some typos 2019-12-11 19:04:01 +01:00
provider.h CORE: query for operations only once per provider (unless no_store is true) 2020-05-19 11:02:41 +02:00
refcount.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
sha3.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
sizes.h PROV: Adapt the DSA signature implementation to provide Algorithmidentifiers 2020-01-28 08:08:22 +01:00
sm3.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
sockets.h Clean up macro definitions of openssl_fdset() in apps.h and sockets.h 2020-05-15 20:23:38 +02:00
sslconf.h Fix header file include guard names 2019-09-28 20:26:36 +02:00
symhacks.h Rename provider and core get_param_types functions 2019-08-15 11:58:25 +02:00
thread_once.h Update copyright year 2020-05-15 14:09:49 +01:00
tsan_assist.h Fix Typos 2019-07-02 14:22:29 +02:00