mirror of
https://github.com/openssl/openssl.git
synced 2024-11-27 20:14:20 +08:00
prov: add extra params argument to KDF implementations
Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/14383)
This commit is contained in:
parent
f59612fed8
commit
c983a0e521
@ -172,6 +172,9 @@ static int kdf_hkdf_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
OSSL_LIB_CTX *provctx = PROV_LIBCTX_OF(ctx->provctx);
|
||||
int n;
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if (!ossl_prov_digest_load_from_params(&ctx->digest, params, provctx))
|
||||
return 0;
|
||||
|
||||
|
@ -282,6 +282,9 @@ static int kbkdf_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
OSSL_LIB_CTX *libctx = PROV_LIBCTX_OF(ctx->provctx);
|
||||
const OSSL_PARAM *p;
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if (!ossl_prov_macctx_load_from_params(&ctx->ctx_init, params, NULL,
|
||||
NULL, NULL, libctx))
|
||||
return 0;
|
||||
|
@ -136,6 +136,9 @@ static int krb5kdf_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
KRB5KDF_CTX *ctx = vctx;
|
||||
OSSL_LIB_CTX *provctx = PROV_LIBCTX_OF(ctx->provctx);
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if (!ossl_prov_cipher_load_from_params(&ctx->cipher, params, provctx))
|
||||
return 0;
|
||||
|
||||
|
@ -172,6 +172,9 @@ static int kdf_pbkdf2_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
int pkcs5;
|
||||
uint64_t iter, min_iter;
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if (!ossl_prov_digest_load_from_params(&ctx->digest, params, provctx))
|
||||
return 0;
|
||||
|
||||
|
@ -225,6 +225,9 @@ static int kdf_pkcs12_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
KDF_PKCS12 *ctx = vctx;
|
||||
OSSL_LIB_CTX *provctx = PROV_LIBCTX_OF(ctx->provctx);
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if (!ossl_prov_digest_load_from_params(&ctx->digest, params, provctx))
|
||||
return 0;
|
||||
|
||||
|
@ -185,6 +185,9 @@ static int kdf_scrypt_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
KDF_SCRYPT *ctx = vctx;
|
||||
uint64_t u64_value;
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if ((p = OSSL_PARAM_locate_const(params, OSSL_KDF_PARAM_PASSWORD)) != NULL)
|
||||
if (!scrypt_set_membuf(&ctx->pass, &ctx->pass_len, p))
|
||||
return 0;
|
||||
|
@ -136,6 +136,9 @@ static int kdf_sshkdf_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
KDF_SSHKDF *ctx = vctx;
|
||||
OSSL_LIB_CTX *provctx = PROV_LIBCTX_OF(ctx->provctx);
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if (!ossl_prov_digest_load_from_params(&ctx->digest, params, provctx))
|
||||
return 0;
|
||||
|
||||
|
@ -449,6 +449,9 @@ static int sskdf_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
OSSL_LIB_CTX *libctx = PROV_LIBCTX_OF(ctx->provctx);
|
||||
size_t sz;
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if (!ossl_prov_digest_load_from_params(&ctx->digest, params, libctx))
|
||||
return 0;
|
||||
|
||||
|
@ -168,6 +168,9 @@ static int kdf_tls1_prf_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
TLS1_PRF *ctx = vctx;
|
||||
OSSL_LIB_CTX *libctx = PROV_LIBCTX_OF(ctx->provctx);
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
|
||||
if ((p = OSSL_PARAM_locate_const(params, OSSL_KDF_PARAM_DIGEST)) != NULL) {
|
||||
if (strcasecmp(p->data, SN_md5_sha1) == 0) {
|
||||
if (!ossl_prov_macctx_load_from_params(&ctx->P_hash, params,
|
||||
|
@ -472,6 +472,8 @@ static int x942kdf_set_ctx_params(void *vctx, const OSSL_PARAM params[])
|
||||
const char *propq = NULL;
|
||||
size_t id;
|
||||
|
||||
if (params == NULL)
|
||||
return 1;
|
||||
if (!ossl_prov_digest_load_from_params(&ctx->digest, params, provctx))
|
||||
return 0;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user