openssl/include/crypto
Simo Sorce 98642df4ba Propagate selection all the way on key export
EVP_PKEY_eq() is used to check, among other things, if a certificate
public key corresponds to a private key. When the private key belongs to
a provider that does not allow to export private keys this currently
fails as the internal functions used to import/export keys ignored the
selection given (which specifies that only the public key needs to be
considered) and instead tries to export everything.

This patch allows to propagate the selection all the way down including
adding it in the cache so that a following operation actually looking
for other selection parameters does not mistakenly pick up an export
containing only partial information.

Signed-off-by: Simo Sorce <simo@redhat.com>

Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/19648)
2022-11-15 12:04:12 +01:00
..
__DECC_INCLUDE_EPILOGUE.H
__DECC_INCLUDE_PROLOGUE.H
aes_platform.h Add vpaes-loongarch64.pl module. 2022-10-12 18:02:12 +11:00
aria.h
asn1_dsa.h
asn1.h libcrypto and test: rename asn1_string_to_time_t to ossl_asn1_string_to_time_t 2022-07-19 08:44:19 +02:00
asn1err.h
async.h
asyncerr.h Update copyright year 2021-06-17 13:24:59 +01:00
bioerr.h BIO_dgram support for BIO_sendmmsg/BIO_recvmmsg 2022-09-01 18:03:10 +10:00
bn_conf.h.in
bn_dh.h
bn_srp.h
bn.h
bnerr.h RSA keygen update: Raise an error if no prime candidate q is found. 2022-06-13 10:56:31 +02:00
buffererr.h Update copyright year 2021-06-17 13:24:59 +01:00
chacha.h
cmll_platform.h Split bignum code out of the sparcv9cap.c 2021-07-15 09:33:04 +02:00
cmperr.h Update copyright year 2021-06-17 13:24:59 +01:00
cmserr.h CMS sign digest 2022-04-02 10:42:16 -04:00
comperr.h Update copyright year 2021-06-17 13:24:59 +01:00
conferr.h
context.h Release the drbg in the global default context before engines 2022-11-02 11:01:20 +01:00
crmferr.h Update copyright year 2021-06-17 13:24:59 +01:00
cryptlib.h
cryptoerr.h err: add additional errors 2022-01-12 20:10:21 +11:00
cterr.h Update copyright year 2021-06-17 13:24:59 +01:00
ctype.h tolower: refine the tolower code to avoid a memory access 2022-05-23 09:51:28 +10:00
decoder.h Remove the _fetch_by_number functions 2022-05-06 10:38:55 +10:00
decodererr.h
des_platform.h Split bignum code out of the sparcv9cap.c 2021-07-15 09:33:04 +02:00
dh.h Update copyright year 2022-05-03 13:34:51 +01:00
dherr.h Stop raising ERR_R_MALLOC_FAILURE in most places 2022-10-05 14:02:03 +02:00
dsa.h Update copyright year 2022-05-03 13:34:51 +01:00
dsaerr.h Update copyright year 2021-06-17 13:24:59 +01:00
dso_conf.h.in
ec.h Add HPKE DHKEM provider support for EC, X25519 and X448. 2022-09-23 09:24:47 +01:00
ecerr.h Add error code for unsupported explicit parameters 2022-04-14 08:51:18 +02:00
ecx.h Add HPKE DHKEM provider support for EC, X25519 and X448. 2022-09-23 09:24:47 +01:00
encoder.h Remove the _fetch_by_number functions 2022-05-06 10:38:55 +10:00
encodererr.h Update copyright year 2021-06-17 13:24:59 +01:00
engine.h
engineerr.h Update copyright year 2021-06-17 13:24:59 +01:00
err.h
ess.h
esserr.h
evp.h Propagate selection all the way on key export 2022-11-15 12:04:12 +01:00
evperr.h
hpke.h Add HPKE DHKEM provider support for EC, X25519 and X448. 2022-09-23 09:24:47 +01:00
httperr.h
lhash.h
md32_common.h Add ROTATE inline asm support for SM3 2022-06-22 12:46:50 +02:00
modes.h Implement AES-GCM-SIV (RFC8452) 2022-07-29 08:32:16 -04:00
objects.h
objectserr.h Update copyright year 2021-06-17 13:24:59 +01:00
ocsperr.h Update copyright year 2021-06-17 13:24:59 +01:00
pem.h Fix copyrights 2022-02-03 13:56:38 +01:00
pemerr.h
pkcs7.h
pkcs7err.h Update copyright year 2021-06-17 13:24:59 +01:00
pkcs12err.h Allow PKCS12 export to set arbitrary bag attributes 2022-09-23 17:40:02 +01:00
poly1305.h
ppc_arch.h Update copyright year 2022-05-03 13:34:51 +01:00
punycode.h fuzz: add punycode decoder fuzz test 2022-11-11 08:14:48 +11:00
rand_pool.h
rand.h Pre-declare all core dispatch table functions, and fix the internal ones 2022-07-13 07:56:51 +02:00
randerr.h Update copyright year 2021-06-17 13:24:59 +01:00
riscv_arch.def Add riscv scalar crypto extension capability 2022-06-10 11:45:41 +02:00
riscv_arch.h Add basic RISC-V cpuid and OPENSSL_riscvcap 2022-05-19 16:32:49 +10:00
rsa.h Update copyright year 2022-05-03 13:34:51 +01:00
rsaerr.h
security_bits.h
sha.h
siphash.h
siv.h
sm2.h Correctly calculate the length of SM2 plaintext given the ciphertext 2021-08-24 14:22:07 +01:00
sm2err.h
sm4_platform.h Apply SM4 optimization patch to Kunpeng-920 2022-11-02 08:45:10 +11:00
sm4.h
sparc_arch.h Split bignum code out of the sparcv9cap.c 2021-07-15 09:33:04 +02:00
sparse_array.h
store.h Add method store cache flush and method removal to non-EVP operations 2022-05-05 15:06:12 +02:00
storeerr.h
tserr.h Update copyright year 2021-06-17 13:24:59 +01:00
types.h
uierr.h Update copyright year 2021-06-17 13:24:59 +01:00
x509.h X509: clean up doc and implementation of X509{,_REQ}_check_private_key() 2022-08-24 11:27:12 +02:00
x509err.h x509_att.c: improve error checking and reporting and coding style 2022-08-24 11:25:04 +02:00
x509v3err.h Update copyright year 2021-06-17 13:24:59 +01:00