ossl_cmp_msg_check_update(): fix two wrong error return values (-1 instead of 0)

Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/20190)
This commit is contained in:
Dr. David von Oheimb 2023-02-01 15:36:25 +01:00 committed by Tomas Mraz
parent 13cb5416f4
commit 7f7dafe98b

View File

@ -775,6 +775,11 @@ int ossl_cmp_msg_check_update(OSSL_CMP_CTX *ctx, const OSSL_CMP_MSG *msg,
CMP_R_RECIPNONCE_UNMATCHED)) CMP_R_RECIPNONCE_UNMATCHED))
return 0; return 0;
/* if not yet present, learn transactionID */
if (ctx->transactionID == NULL
&& !OSSL_CMP_CTX_set1_transactionID(ctx, hdr->transactionID))
return 0;
/* /*
* RFC 4210 section 5.1.1 states: the recipNonce is copied from * RFC 4210 section 5.1.1 states: the recipNonce is copied from
* the senderNonce of the previous message in the transaction. * the senderNonce of the previous message in the transaction.
@ -783,11 +788,6 @@ int ossl_cmp_msg_check_update(OSSL_CMP_CTX *ctx, const OSSL_CMP_MSG *msg,
if (!ossl_cmp_ctx_set1_recipNonce(ctx, hdr->senderNonce)) if (!ossl_cmp_ctx_set1_recipNonce(ctx, hdr->senderNonce))
return 0; return 0;
/* if not yet present, learn transactionID */
if (ctx->transactionID == NULL
&& !OSSL_CMP_CTX_set1_transactionID(ctx, hdr->transactionID))
return -1;
/* /*
* Store any provided extraCerts in ctx for future use, * Store any provided extraCerts in ctx for future use,
* such that they are available to ctx->certConf_cb and * such that they are available to ctx->certConf_cb and
@ -798,7 +798,7 @@ int ossl_cmp_msg_check_update(OSSL_CMP_CTX *ctx, const OSSL_CMP_MSG *msg,
/* this allows self-signed certs */ /* this allows self-signed certs */
X509_ADD_FLAG_UP_REF | X509_ADD_FLAG_NO_DUP X509_ADD_FLAG_UP_REF | X509_ADD_FLAG_NO_DUP
| X509_ADD_FLAG_PREPEND)) | X509_ADD_FLAG_PREPEND))
return -1; return 0;
if (ossl_cmp_hdr_get_protection_nid(hdr) == NID_id_PasswordBasedMAC) { if (ossl_cmp_hdr_get_protection_nid(hdr) == NID_id_PasswordBasedMAC) {
/* /*