Added differentiation between missing secret and missing seed
This was previously mistakenly handled as a single error code. Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Stephen Henson <steve@openssl.org> (Merged from https://github.com/openssl/openssl/pull/3989)
This commit is contained in:
parent
f55129c739
commit
5b27751923
4 changed files with 8 additions and 1 deletions
|
@ -1968,6 +1968,7 @@ KDF_R_INVALID_DIGEST:100:invalid digest
|
|||
KDF_R_MISSING_KEY:104:missing key
|
||||
KDF_R_MISSING_MESSAGE_DIGEST:105:missing message digest
|
||||
KDF_R_MISSING_PARAMETER:101:missing parameter
|
||||
KDF_R_MISSING_SECRET:107:missing secret
|
||||
KDF_R_MISSING_SEED:106:missing seed
|
||||
KDF_R_UNKNOWN_PARAMETER_TYPE:103:unknown parameter type
|
||||
KDF_R_VALUE_MISSING:102:value missing
|
||||
|
|
|
@ -29,6 +29,7 @@ static const ERR_STRING_DATA KDF_str_reasons[] = {
|
|||
{ERR_PACK(ERR_LIB_KDF, 0, KDF_R_MISSING_MESSAGE_DIGEST),
|
||||
"missing message digest"},
|
||||
{ERR_PACK(ERR_LIB_KDF, 0, KDF_R_MISSING_PARAMETER), "missing parameter"},
|
||||
{ERR_PACK(ERR_LIB_KDF, 0, KDF_R_MISSING_SECRET), "missing secret"},
|
||||
{ERR_PACK(ERR_LIB_KDF, 0, KDF_R_MISSING_SEED), "missing seed"},
|
||||
{ERR_PACK(ERR_LIB_KDF, 0, KDF_R_UNKNOWN_PARAMETER_TYPE),
|
||||
"unknown parameter type"},
|
||||
|
|
|
@ -128,7 +128,11 @@ static int pkey_tls1_prf_derive(EVP_PKEY_CTX *ctx, unsigned char *key,
|
|||
KDFerr(KDF_F_PKEY_TLS1_PRF_DERIVE, KDF_R_MISSING_MESSAGE_DIGEST);
|
||||
return 0;
|
||||
}
|
||||
if (kctx->sec == NULL || kctx->seedlen == 0) {
|
||||
if (kctx->sec == NULL) {
|
||||
KDFerr(KDF_F_PKEY_TLS1_PRF_DERIVE, KDF_R_MISSING_SECRET);
|
||||
return 0;
|
||||
}
|
||||
if (kctx->seedlen == 0) {
|
||||
KDFerr(KDF_F_PKEY_TLS1_PRF_DERIVE, KDF_R_MISSING_SEED);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ int ERR_load_KDF_strings(void);
|
|||
# define KDF_R_MISSING_KEY 104
|
||||
# define KDF_R_MISSING_MESSAGE_DIGEST 105
|
||||
# define KDF_R_MISSING_PARAMETER 101
|
||||
# define KDF_R_MISSING_SECRET 107
|
||||
# define KDF_R_MISSING_SEED 106
|
||||
# define KDF_R_UNKNOWN_PARAMETER_TYPE 103
|
||||
# define KDF_R_VALUE_MISSING 102
|
||||
|
|
Loading…
Reference in a new issue