openssl/crypto/evp
Matt Caswell 19ad1e9d37 Remove a TODO(3.0) from EVP_PKEY_derive_set_peer()
The TODO described a case where a legacy derive operation is called, but
the peer key is provider based. In practice this will almost never be a
problem. We should never end up in our own legacy EVP_PKEY_METHOD
implementations if no ENGINE has been configured. If an ENGINE has been
configured then we we will be using a third party EVP_PKEY_METHOD
implementation and public APIs will be used to obtain the key data from the
peer key so there will be no "reaching inside" the pkey.

There is a theoretical case where a third party ENGINE wraps our own
internal EVP_PKEY_METHODs using EVP_PKEY_meth_find() or
EVP_PKEY_meth_get0(). For these cases we just ensure all our
EVP_PKEY_METHODs never reach "inside" the implementation of a peer key. We
can never assume that it is a legacy key.

Fixes #14399

Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14555)
2021-03-17 09:56:33 +00:00
..
asymcipher.c evp: add params arguments to init functions 2021-03-12 08:27:11 +10:00
bio_b64.c
bio_enc.c
bio_md.c
bio_ok.c
build.info
c_allc.c
c_alld.c
cmeth_lib.c
ctrl_params_translate.c Reword repeated words. 2021-03-09 16:25:45 +10:00
dh_ctrl.c
dh_support.c Update copyright year 2021-03-11 13:27:36 +00:00
digest.c Remove TODOs from digest.c 2021-03-17 10:33:45 +10:00
dsa_ctrl.c Update copyright year 2021-03-11 13:27:36 +00:00
e_aes_cbc_hmac_sha1.c
e_aes_cbc_hmac_sha256.c
e_aes.c
e_aria.c
e_bf.c
e_camellia.c
e_cast.c
e_chacha20_poly1305.c
e_des3.c
e_des.c
e_idea.c
e_null.c
e_old.c
e_rc2.c
e_rc4_hmac_md5.c
e_rc4.c
e_rc5.c
e_seed.c
e_sm4.c
e_xcbc_d.c
ec_ctrl.c
ec_support.c Update copyright year 2021-03-11 13:27:36 +00:00
encode.c
evp_cnf.c
evp_enc.c evp: add params arguments to init functions 2021-03-12 08:27:11 +10:00
evp_err.c Fix reason code: EVP_R_OPERATON_NOT_INITIALIZED 2021-03-11 12:19:40 +10:00
evp_fetch.c property: default queries create the property values. 2021-03-16 09:19:20 +10:00
evp_key.c
evp_lib.c Remove some of the TODO 3.0 in crypto/evp related to legacy support. 2021-03-04 14:15:01 +01:00
evp_local.h Update copyright year 2021-03-11 13:27:36 +00:00
evp_pbe.c
evp_pkey.c
evp_rand.c
evp_utils.c
exchange.c Remove a TODO(3.0) from EVP_PKEY_derive_set_peer() 2021-03-17 09:56:33 +00:00
kdf_lib.c Update copyright year 2021-03-11 13:27:36 +00:00
kdf_meth.c Update copyright year 2021-03-11 13:27:36 +00:00
kem.c evp: add params arguments to init functions 2021-03-12 08:27:11 +10:00
keymgmt_lib.c Always check CRYPTO_LOCK_{read,write}_lock 2021-03-14 15:33:34 +10:00
keymgmt_meth.c keymgmt_meth: remove two TODO 3.0 2021-03-14 15:45:40 +10:00
legacy_blake2.c Update copyright year 2021-03-11 13:27:36 +00:00
legacy_md2.c
legacy_md4.c
legacy_md5_sha1.c
legacy_md5.c
legacy_mdc2.c
legacy_meth.h
legacy_ripemd.c
legacy_sha.c
legacy_wp.c
m_null.c
m_sigver.c evp: add params arguments to init functions 2021-03-12 08:27:11 +10:00
mac_lib.c Update copyright year 2021-03-11 13:27:36 +00:00
mac_meth.c
names.c Update copyright year 2021-03-11 13:27:36 +00:00
p5_crpt2.c Update copyright year 2021-03-11 13:27:36 +00:00
p5_crpt.c
p_dec.c Update copyright year 2021-03-11 13:27:36 +00:00
p_enc.c Update copyright year 2021-03-11 13:27:36 +00:00
p_legacy.c Make the EVP_PKEY_get0* functions have a const return type 2021-03-08 15:13:09 +00:00
p_lib.c p_lib.c: Remove TODO comments 2021-03-17 10:14:54 +10:00
p_open.c
p_seal.c
p_sign.c
p_verify.c
pbe_scrypt.c Update copyright year 2021-03-11 13:27:36 +00:00
pmeth_check.c
pmeth_gn.c evp: add params argument to key manager's gen_init call 2021-03-12 08:27:11 +10:00
pmeth_lib.c Cache legacy keys instead of downgrading them 2021-03-08 15:11:31 +00:00
signature.c evp: add params arguments to init functions 2021-03-12 08:27:11 +10:00