openssl/crypto
Pauli 07f9c81d20 provider_core: sort provider stack on find
Adding all providers is quadratic time because each provider is checked
for being in the stack before adding it.  However, this is an improvement
over the older O(n^2 log n) code where each find also sorted the stack.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Todd Short <todd.short@me.com>
(Merged from https://github.com/openssl/openssl/pull/20842)
2023-05-01 17:14:42 +10:00
..
aes fix aes-xts bug on aarch64 big-endian env. 2023-04-28 09:19:49 +02:00
aria
asn1 asn1: sort stacks before using find 2023-05-01 17:14:42 +10:00
async Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
bf Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
bio bss_dgram.c: Use BIO_ADDR_sockaddr() and BIO_ADDR_sockaddr_size() 2023-03-07 15:24:54 +01:00
bn bn_local: remove unused PTR_SIZE_INT definition 2023-04-16 19:19:04 +01:00
buffer Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
camellia
cast Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
chacha Ensure there's only one copy of OPENSSL_armcap_P in libcrypto.a 2023-03-29 12:21:31 +02:00
cmac Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
cmp crypto/cmp: fix CertReqId to use in p10cr transactions acc. to RFC 4210 2023-04-18 07:26:11 +02:00
cms Fix size_t/int mismatch in cms_ec.c and rsa_sig.c 2023-03-15 08:24:42 +11:00
comp Add zlib oneshot compression 2022-11-07 11:23:13 +01:00
conf stack: Do not add error if pop/shift/value accesses outside of the stack 2022-10-21 18:02:35 +02:00
crmf crmf_lib.c: clean up coments on OSSL_CRMF_CERTTEMPLATE*() 2023-04-18 08:16:01 +02:00
ct Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
des Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
dh FFC cleanups 2023-04-03 10:31:04 +02:00
dsa FFC cleanups 2023-04-03 10:31:04 +02:00
dso crypto/dso/dso_vms.c: Better definition of DSO_MALLOC() 2022-10-28 12:11:30 +02:00
ec Fixes #19580 ECX keygen 2023-04-12 17:21:43 +10:00
encode_decode Coverity 1515953: negative loop bound 2022-10-14 12:53:02 +11:00
engine crypto: Fix various typos, repeated words, align some spelling to LDP. 2022-10-12 16:55:01 +11:00
err RFC7250 (RPK) support 2023-03-28 13:49:54 -04:00
ess Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
evp pbe: sort stack before using find 2023-05-01 17:14:42 +10:00
ffc FFC cleanups 2023-04-03 10:31:04 +02:00
hmac
hpke Fix a HPKE API to put libctx, propq as last (optional parameters). 2023-04-14 13:11:24 +10:00
http http proxy handling: Use ossl_safe_getenv() instead of getenv() 2023-04-28 09:55:27 +02:00
idea Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
kdf
lhash Change all references to OpenSSL 3.1 to OpenSSL 3.2 in the master branch 2022-10-07 10:05:50 +02:00
md2 Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
md4 Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
md5 fix md5 bug on aarch64 big-endian plantform. 2023-04-28 14:36:35 +02:00
mdc2 Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
modes Do not build P10-specific AES-GCM assembler on macOS 2023-03-22 14:26:26 +01:00
objects Don't call OPENSSL_init_crypto from inside a RUN_ONCE 2023-04-04 09:36:42 +02:00
ocsp Fix incomplete check on X509V3_add1_i2d() 2023-01-31 11:05:51 +11:00
pem Avoid dangling ptrs in header and data params for PEM_read_bio_ex 2023-02-07 17:05:10 +01:00
perlasm riscv: GCM: Simplify GCM calculation 2023-03-16 13:12:19 +11:00
pkcs7 Support signedAndEnveloped content in PKCS7_decrypt() 2023-02-07 17:05:10 +01:00
pkcs12 Fix PKCS12_newpass() to work with PBES2. 2023-03-15 08:49:03 +11:00
poly1305 Ensure there's only one copy of OPENSSL_armcap_P in libcrypto.a 2023-03-29 12:21:31 +02:00
property Only call OPENSSL_init_crypto on fetch if using the default libctx 2023-02-22 10:03:14 +11:00
rand Release the drbg in the global default context before engines 2022-11-02 11:01:20 +01:00
rc2 Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
rc4 Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
rc5 Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
ripemd Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
rsa Avoid generating RSA keys with p < q 2023-04-28 19:48:46 +02:00
seed Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
sha Ensure there's only one copy of OPENSSL_armcap_P in libcrypto.a 2023-03-29 12:21:31 +02:00
siphash crypto/*: Fix various typos, repeated words, align some spelling to LDP. 2022-10-12 16:55:01 +11:00
sm2 Fix mem leak in ECDSA_sign(). 2023-03-31 14:57:47 -04:00
sm3
sm4 Fix SM4-XTS build failure on Mac mini M1 2023-02-06 12:36:07 +01:00
srp add a check for the return of sk_SRP_gN_new_null() so that capture the potential memory error in time 2022-10-20 19:04:44 +11:00
stack stack: fix searching when the stack isn't sorted. 2023-04-28 09:24:06 +02:00
store crypto/*: Fix various typos, repeated words, align some spelling to LDP. 2022-10-12 16:55:01 +11:00
thread Fix compilation error when using clang-cl 16 or higher 2023-04-03 08:19:43 +10:00
ts crypto/*: Fix various typos, repeated words, align some spelling to LDP. 2022-10-12 16:55:01 +11:00
txt_db txt_db: fix -Wunused-but-set-variable 2022-10-21 15:56:32 +02:00
ui Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
whrlpool Avoid duplicating symbols in legacy.a with some build options 2023-01-31 11:10:22 +11:00
x509 x509: sort stacks prior to searching 2023-04-28 09:24:06 +02:00
alphacpuid.pl
arm64cpuid.pl
arm_arch.h Apply aes-gcm unroll8+eor3 optimization patch to Neoverse V2 2023-02-08 16:54:57 +01:00
armcap.c Ensure there's only one copy of OPENSSL_armcap_P in libcrypto.a 2023-03-29 12:21:31 +02:00
armv4cpuid.pl Ensure there's only one copy of OPENSSL_armcap_P in libcrypto.a 2023-03-29 12:21:31 +02:00
asn1_dsa.c
bsearch.c
build.info Refactor build.info 2023-03-30 11:14:16 +01:00
c64xpluscpuid.pl
context.c Fix calling pthread_key_delete on uninitialized data 2023-04-24 11:31:57 +02:00
core_algorithm.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
core_fetch.c
core_namemap.c
cpt_err.c
cpuid.c
cryptlib.c Fix UEFI support on win32 2023-04-13 10:25:55 +01:00
ctype.c Fixed typos in documentation and comments 2023-01-04 12:53:05 +01:00
cversion.c
der_writer.c
deterministic_nonce.c Address coverity issue CID 1517105 2022-12-16 18:57:42 +01:00
dllmain.c
ebcdic.c
ex_data.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
getenv.c
ia64cpuid.S
info.c info.c: Fix typos in seed macro name and description string 2023-01-10 12:15:42 +01:00
init.c Add ZSTD compression support (RFC8478bis) 2022-10-18 09:30:21 -04:00
initthread.c
loongarch64cpuid.pl Add LoongArch64 cpuid and OPENSSL_loongarchcap_P 2022-10-12 18:02:12 +11:00
loongarch_arch.h Add LoongArch64 cpuid and OPENSSL_loongarchcap_P 2022-10-12 18:02:12 +11:00
loongarchcap.c Add LoongArch64 cpuid and OPENSSL_loongarchcap_P 2022-10-12 18:02:12 +11:00
LPdir_nyi.c
LPdir_unix.c
LPdir_vms.c
LPdir_win32.c
LPdir_win.c
LPdir_wince.c
mem_clr.c
mem_sec.c Do not check definition of a macro and use it in a single condition 2023-01-12 10:46:52 +01:00
mem.c
mips_arch.h
o_dir.c
o_fopen.c crypto: Fix various typos, repeated words, align some spelling to LDP. 2022-10-12 16:55:01 +11:00
o_init.c
o_str.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
o_time.c
packet.c Rationalize FIPS sources 2023-02-08 16:20:55 +01:00
param_build_set.c
param_build.c OSSL_PARAM_BLD and BIGNUM; ensure at least one byte is allocated 2023-01-11 23:38:13 +01:00
params_dup.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
params_from_text.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
params.c params: add helper functions to allocate & copy params 2023-04-26 08:01:46 +10:00
pariscid.pl
passphrase.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
ppccap.c
ppccpuid.pl
provider_child.c Fix a potential memory leak in crypto/provider_child.c 2023-02-01 08:20:08 +11:00
provider_conf.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
provider_core.c provider_core: sort provider stack on find 2023-05-01 17:14:42 +10:00
provider_local.h
provider_predefined.c
provider.c Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
punycode.c Add more punycode tests and remove ossl_a2ucompare() 2023-02-08 16:17:37 +01:00
quic_vlint.c QUIC: Enable building with QUIC support disabled 2023-01-13 13:20:16 +00:00
README-sparse_array.md
riscv32cpuid.pl
riscv64cpuid.pl
riscvcap.c
s390x_arch.h S390X: Accelerate keccak XOF 2023-03-07 18:21:51 +01:00
s390xcap.c S390x: Support ME and CRT offloading 2023-02-08 16:53:12 +01:00
s390xcpuid.pl
self_test_core.c
sleep.c Fix UEFI support on win32 2023-04-13 10:25:55 +01:00
sparccpuid.S
sparcv9cap.c
sparse_array.c
threads_lib.c Define threads_lib.c functions only for OPENSSL_SYS_UNIX 2022-11-14 07:47:53 +00:00
threads_none.c CRYPTO_THREAD_lock_new(): Avoid infinite recursion on allocation error 2022-10-05 10:20:10 +11:00
threads_pthread.c CRYPTO_THREAD_lock_new(): Avoid infinite recursion on allocation error 2022-10-05 10:20:10 +11:00
threads_win.c VC++ 2010 x86 compilers do not have InterlockedOr64 2023-03-22 14:45:29 +01:00
time.c Fix UEFI support on win32 2023-04-13 10:25:55 +01:00
trace.c add OSSL_TRACE_STRING(), OSSL_TRACE_STRING_MAX, and OSSL_trace_string() 2023-01-26 09:16:51 +01:00
uid.c
vms_rms.h
x86_64cpuid.pl
x86cpuid.pl