mirror of
https://github.com/openssl/openssl.git
synced 2025-03-01 14:46:32 +08:00
Fix up encoder/decoder issues caused by not passing a library context to the PKCS8 encrypt/decrypt
Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/14587)
This commit is contained in:
parent
169eca602c
commit
e3c7595521
@ -134,7 +134,7 @@ static void *der2key_decode_p8(const unsigned char **input_der,
|
||||
if (!pw_cb(pbuf, sizeof(pbuf), &plen, NULL, pw_cbarg))
|
||||
ERR_raise(ERR_LIB_PROV, PROV_R_UNABLE_TO_GET_PASSPHRASE);
|
||||
else
|
||||
p8inf = PKCS8_decrypt(p8, pbuf, plen);
|
||||
p8inf = PKCS8_decrypt_ex(p8, pbuf, plen, PROV_LIBCTX_OF(ctx->provctx), NULL);
|
||||
if (p8inf == NULL)
|
||||
ctx->flag_fatal = 1;
|
||||
X509_SIG_free(p8);
|
||||
|
@ -117,8 +117,7 @@ static X509_SIG *p8info_to_encp8(PKCS8_PRIV_KEY_INFO *p8info,
|
||||
return NULL;
|
||||
}
|
||||
/* First argument == -1 means "standard" */
|
||||
p8 = PKCS8_encrypt_ex(-1, ctx->cipher, kstr, klen, NULL, 0, 0, p8info,
|
||||
libctx, NULL);
|
||||
p8 = PKCS8_encrypt_ex(-1, ctx->cipher, kstr, klen, NULL, 0, 0, p8info, libctx, NULL);
|
||||
OPENSSL_cleanse(kstr, klen);
|
||||
return p8;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user