openssl/crypto
Richard Levitte b3f5d5d368 Refactor OSSL_ENCODER_do_all_provided() to behave like OSSL_ENCODER_fetch()
This is refactored to use inner_ossl_encoder_fetch() without any given
name, which is just there to ensure all encoder implementations are
made into methods, and then use ossl_method_store_do_all() to list
them all.

This also adds the internal ossl_encoder_do_all_prefetched(), which
can be used if pre-fetching needs to be done separately from listing
all the encoder implementations, or if listing may happen multiple
times.

Fixes #15538
Fixes #14837

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/15604)
2021-06-15 16:21:32 +02:00
..
aes Add AES consttime code for no-asm configurations 2021-06-13 06:36:48 +02:00
aria Update copyright year 2021-04-08 13:04:41 +01:00
asn1 ASN1_parse_dump(): allow NULL BIO input, to simplify applications not needing output 2021-06-15 14:23:29 +02:00
async err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
bf
bio BIO_write_ex(): Make handing of BIO b == NULL and dlen == 0 less redundant 2021-06-15 14:23:29 +02:00
bn bn: remove TODOs 2021-06-02 16:30:15 +10:00
buffer err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
camellia
cast
chacha Properly restore XMM registers in ChaCha20's AVX-512(VL) assembly 2021-05-21 13:05:18 +02:00
cmac Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
cmp Give ASN.1 objects the ability to report their libctx/propq 2021-06-05 17:39:27 +10:00
cms remove end of line whitespace 2021-06-15 19:01:00 +10:00
comp comp: remove TODOs 2021-06-02 16:30:15 +10:00
conf Add NCONF_get_section_names() 2021-06-02 12:40:02 +10:00
crmf crmf: remove TODOs 2021-06-02 16:30:15 +10:00
ct Fix CTLOG_new_from_base64_ex() 2021-06-08 18:53:28 +01:00
des
dh Fix DH/DHX named groups to not overwrite the private key length. 2021-06-14 09:21:12 +10:00
dsa Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
dso dl_name_converter: Avoid unnecessary overallocation 2021-06-11 08:52:14 +10:00
ec Add a generic SubjectPublicKeyInfo decoder 2021-06-14 09:43:01 +01:00
encode_decode Refactor OSSL_ENCODER_do_all_provided() to behave like OSSL_ENCODER_fetch() 2021-06-15 16:21:32 +02:00
engine Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
err err: clear flags better when clearing errors. 2021-06-10 18:11:45 +10:00
ess err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
evp CORE: Move away the allocation of the temporary no_cache method store 2021-06-15 15:06:04 +02:00
ffc Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
hmac Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
http Rename OSSL_HTTP_set_request() to OSSL_HTTP_set1_request() for clarity 2021-06-11 14:41:20 +02:00
idea Update copyright year 2021-04-08 13:04:41 +01:00
kdf
lhash Update copyright year 2021-04-08 13:04:41 +01:00
md2
md4
md5 Remove unused code from the fips module 2021-05-08 20:44:41 +10:00
mdc2
modes Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
objects err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
ocsp ocsp: remove TODOs 2021-06-02 16:30:15 +10:00
pem Decoding PKCS#8: separate decoding of encrypted and unencrypted PKCS#8 2021-06-09 17:00:10 +02:00
perlasm Add aix64-gcc-as architecture and p2align callback 2021-06-08 18:52:53 +10:00
pkcs7 Teach more of the ASN.1 code about libctx/propq 2021-06-05 17:39:10 +10:00
pkcs12 pkcs12: fix Coverity 1485667 logically dead code 2021-06-08 19:32:17 +10:00
poly1305 Drop libimplementations.a 2021-05-07 10:17:23 +02:00
property Add the internal function ossl_method_store_do_all() 2021-06-15 16:21:31 +02:00
rand Elimination of some sources not needed in the FIPS_MODULE 2021-06-07 08:37:09 +02:00
rc2 Update copyright year 2021-05-06 13:03:23 +01:00
rc4
rc5
ripemd Drop libimplementations.a 2021-05-07 10:17:23 +02:00
rsa Move libssl related defines used by fips provider to prov_ssl.h 2021-06-04 17:06:47 +02:00
seed Use <> for #include openssl/xxx 2021-05-27 09:56:41 +10:00
sha sha: convert SHA one shot macros back to being functions 2021-06-10 14:18:06 +10:00
siphash
sm2 Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
sm3 Add "origin" field to EVP_CIPHER, EVP_MD 2021-04-18 10:03:07 +02:00
sm4 Update copyright year 2021-04-08 13:04:41 +01:00
srp add zero strenght arguments to BN and RAND RNG calls 2021-05-29 17:17:12 +10:00
stack Improve the implementation of X509_STORE_CTX_get1_issuer() 2021-04-28 11:19:34 +02:00
store CORE: Move away the allocation of the temporary no_cache method store 2021-06-15 15:06:04 +02:00
ts Check the return value of ASN1_STRING_length 2021-06-03 17:09:02 +02:00
txt_db
ui err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
whrlpool A few cleanups of the provider build.infos 2021-05-12 13:23:33 +02:00
x509 Add a generic SubjectPublicKeyInfo decoder 2021-06-14 09:43:01 +01:00
alphacpuid.pl
arm64cpuid.pl
arm_arch.h Update copyright year 2021-05-20 14:22:33 +01:00
armcap.c Use getauxval on Android with API level > 18 2021-06-15 12:53:26 +02:00
armv4cpuid.pl
asn1_dsa.c Update copyright year 2021-04-08 13:04:41 +01:00
bsearch.c
build.info FIPS: don't include crypto/passphrase.c in libfips.a 2021-06-05 10:32:13 +02:00
c64xpluscpuid.pl
context.c Add the concept of a child OSSL_LIB_CTX 2021-05-11 14:56:55 +01:00
core_algorithm.c Fix pointer passed to provider_unquery_operation 2021-05-17 10:22:27 +10:00
core_fetch.c CORE: Move away the allocation of the temporary no_cache method store 2021-06-15 15:06:04 +02:00
core_namemap.c Rename all getters to use get/get0 in name 2021-06-01 12:40:00 +02:00
cpt_err.c err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
cpuid.c Refactor CPUID code 2021-04-02 16:39:13 +02:00
cryptlib.c crypto: remove TODOs 2021-06-02 16:30:15 +10:00
ctype.c Use <> for #include openssl/xxx 2021-05-27 09:56:41 +10:00
cversion.c
der_writer.c
dllmain.c
ebcdic.c
ex_data.c Add the ability for ex_data to have a priority 2021-05-11 14:56:55 +01:00
getenv.c
ia64cpuid.S
info.c
init.c OPENSSL_init_crypto must return 0 when cleanup was done 2021-06-03 17:42:21 +02:00
initthread.c Fix a memleak in the FIPS provider 2021-05-24 09:39:15 +10: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 Update copyright year 2021-04-08 13:04:41 +01:00
mem.c
mips_arch.h
o_dir.c
o_fopen.c
o_init.c
o_str.c Update copyright year 2021-04-08 13:04:41 +01:00
o_time.c
packet.c Move libssl related defines used by fips provider to prov_ssl.h 2021-06-04 17:06:47 +02:00
param_build_set.c
param_build.c Replace OSSL_PARAM_BLD_free_params() with OSSL_PARAM_free(). 2021-04-12 16:55:30 +10:00
params_dup.c params_dup: fix off by one error that allows array overreach. 2021-04-21 08:57:42 +10:00
params_from_text.c
params.c Fix potential NULL dereference in OSSL_PARAM_get_utf8_string() 2021-04-22 16:46:20 +02:00
pariscid.pl
passphrase.c
ppc_arch.h
ppccap.c ppc: fix ambiguous if if else statement 2021-06-01 15:04:05 +10:00
ppccpuid.pl
provider_child.c Ensure mirroring of properties works for subsequent updates 2021-05-20 09:35:41 +01:00
provider_conf.c Add NCONF_get0_libctx() 2021-06-02 12:40:02 +10:00
provider_core.c ossl_provider_set_module_path: Prevent potential UAF 2021-06-11 08:52:14 +10:00
provider_local.h Update copyright year 2021-04-08 13:04:41 +01:00
provider_predefined.c Update copyright year 2021-04-08 13:04:41 +01:00
provider.c Rename also the OSSL_PROVIDER_name() function 2021-06-01 12:43:57 +02:00
punycode.c
README-sparse_array.md
s390x_arch.h
s390xcap.c
s390xcpuid.pl
self_test_core.c Update copyright year 2021-05-20 14:22:33 +01:00
sparc_arch.h
sparccpuid.S
sparcv9cap.c sparc: fix cross compile build 2021-06-01 15:04:05 +10:00
sparse_array.c Update copyright year 2021-04-08 13:04:41 +01:00
threads_lib.c
threads_none.c Update copyright year 2021-04-08 13:04:41 +01:00
threads_pthread.c
threads_win.c
trace.c Rework and make DEBUG macros consistent. 2021-05-28 10:04:31 +02:00
uid.c
vms_rms.h
x86_64cpuid.pl Update copyright year 2021-04-08 13:04:41 +01:00
x86cpuid.pl