mirror of
https://github.com/openssl/openssl.git
synced 2025-03-31 20:10:45 +08:00
Fix error in case CMP msg POPO is not provided in OSSL_CRMF_MSGS_verify_popo()
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com> (Merged from https://github.com/openssl/openssl/pull/11142)
This commit is contained in:
parent
62dcd2aa17
commit
7269071e5e
@ -32,6 +32,7 @@ static const ERR_STRING_DATA CRMF_str_reasons[] = {
|
||||
{ERR_PACK(ERR_LIB_CRMF, 0, CRMF_R_NULL_ARGUMENT), "null argument"},
|
||||
{ERR_PACK(ERR_LIB_CRMF, 0, CRMF_R_POPO_INCONSISTENT_PUBLIC_KEY),
|
||||
"popo inconsistent public key"},
|
||||
{ERR_PACK(ERR_LIB_CRMF, 0, CRMF_R_POPO_MISSING), "popo missing"},
|
||||
{ERR_PACK(ERR_LIB_CRMF, 0, CRMF_R_POPO_MISSING_PUBLIC_KEY),
|
||||
"popo missing public key"},
|
||||
{ERR_PACK(ERR_LIB_CRMF, 0, CRMF_R_POPO_MISSING_SUBJECT),
|
||||
|
@ -485,11 +485,13 @@ int OSSL_CRMF_MSGS_verify_popo(const OSSL_CRMF_MSGS *reqs,
|
||||
X509_PUBKEY *pubkey = NULL;
|
||||
OSSL_CRMF_POPOSIGNINGKEY *sig = NULL;
|
||||
|
||||
if (reqs == NULL
|
||||
|| (req = sk_OSSL_CRMF_MSG_value(reqs, rid)) == NULL
|
||||
|| req->popo == NULL) {
|
||||
CRMFerr(CRMF_F_OSSL_CRMF_MSGS_VERIFY_POPO,
|
||||
CRMF_R_NULL_ARGUMENT);
|
||||
if (reqs == NULL || (req = sk_OSSL_CRMF_MSG_value(reqs, rid)) == NULL) {
|
||||
CRMFerr(CRMF_F_OSSL_CRMF_MSGS_VERIFY_POPO, CRMF_R_NULL_ARGUMENT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (req->popo == NULL) {
|
||||
CRMFerr(0, CRMF_R_POPO_MISSING);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -2263,6 +2263,7 @@ CRMF_R_ITERATIONCOUNT_BELOW_100:108:iterationcount below 100
|
||||
CRMF_R_MALFORMED_IV:101:malformed iv
|
||||
CRMF_R_NULL_ARGUMENT:109:null argument
|
||||
CRMF_R_POPO_INCONSISTENT_PUBLIC_KEY:117:popo inconsistent public key
|
||||
CRMF_R_POPO_MISSING:121:popo missing
|
||||
CRMF_R_POPO_MISSING_PUBLIC_KEY:118:popo missing public key
|
||||
CRMF_R_POPO_MISSING_SUBJECT:119:popo missing subject
|
||||
CRMF_R_POPO_RAVERIFIED_NOT_ACCEPTED:120:popo raverified not accepted
|
||||
|
@ -63,6 +63,7 @@ int ERR_load_CRMF_strings(void);
|
||||
# define CRMF_R_MALFORMED_IV 101
|
||||
# define CRMF_R_NULL_ARGUMENT 109
|
||||
# define CRMF_R_POPO_INCONSISTENT_PUBLIC_KEY 117
|
||||
# define CRMF_R_POPO_MISSING 121
|
||||
# define CRMF_R_POPO_MISSING_PUBLIC_KEY 118
|
||||
# define CRMF_R_POPO_MISSING_SUBJECT 119
|
||||
# define CRMF_R_POPO_RAVERIFIED_NOT_ACCEPTED 120
|
||||
|
Loading…
x
Reference in New Issue
Block a user