X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fcrmf%2Fcrmf_lib.c;fp=crypto%2Fcrmf%2Fcrmf_lib.c;h=dd69372f3e850fc0a09eb5197b2249f3f5a00aa9;hp=acbc9af5cb208e33e80baf4cd9ad15f26b6ab5a8;hb=7269071e5eb54683353a1d2f8831a4ed03485b86;hpb=62dcd2aa17b27b7892ad62540f9034c9192f6530 diff --git a/crypto/crmf/crmf_lib.c b/crypto/crmf/crmf_lib.c index acbc9af5cb..dd69372f3e 100644 --- a/crypto/crmf/crmf_lib.c +++ b/crypto/crmf/crmf_lib.c @@ -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; }