Commit 5cc7ae3e4a for openssl.org
commit 5cc7ae3e4a06913ec96abc34dc2c7d161c9f3fc9
Author: Dr. David von Oheimb <dev@ddvo.net>
Date: Thu Oct 23 21:17:28 2025 +0200
cmp_client_test.c: add print_errors_PKIStatusInfo() and use it for all CMP test executions
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/28985)
diff --git a/test/cmp_client_test.c b/test/cmp_client_test.c
index d11a439daa..4270447d1a 100644
--- a/test/cmp_client_test.c
+++ b/test/cmp_client_test.c
@@ -88,13 +88,26 @@ err:
return NULL;
}
+static void print_errors_PKIStatusInfo(OSSL_CMP_CTX *ctx)
+{
+ int status = OSSL_CMP_CTX_get_status(ctx);
+ char buf[1024];
+ const char *string = OSSL_CMP_CTX_snprint_PKIStatus(ctx, buf, sizeof(buf));
+
+ OSSL_CMP_CTX_print_errors(ctx);
+ if (status > OSSL_CMP_PKISTATUS_accepted && string != NULL)
+ ossl_cmp_log1(WARN, ctx, "mock server response statusInfo: %s", string);
+}
+
static int execute_exec_RR_ses_test(CMP_SES_TEST_FIXTURE *fixt)
{
- return TEST_int_eq(OSSL_CMP_CTX_get_status(fixt->cmp_ctx),
- OSSL_CMP_PKISTATUS_unspecified)
- && TEST_int_eq(OSSL_CMP_exec_RR_ses(fixt->cmp_ctx),
- fixt->expected == OSSL_CMP_PKISTATUS_accepted)
- && TEST_int_eq(OSSL_CMP_CTX_get_status(fixt->cmp_ctx), fixt->expected);
+ int ret = TEST_int_eq(OSSL_CMP_CTX_get_status(fixt->cmp_ctx),
+ OSSL_CMP_PKISTATUS_unspecified)
+ && (TEST_int_eq(OSSL_CMP_exec_RR_ses(fixt->cmp_ctx),
+ fixt->expected == OSSL_CMP_PKISTATUS_accepted));
+
+ print_errors_PKIStatusInfo(fixt->cmp_ctx);
+ return ret && TEST_int_eq(OSSL_CMP_CTX_get_status(fixt->cmp_ctx), fixt->expected);
}
static int execute_exec_GENM_ses_test_single(CMP_SES_TEST_FIXTURE *fixture)
@@ -106,6 +119,7 @@ static int execute_exec_GENM_ses_test_single(CMP_SES_TEST_FIXTURE *fixture)
OSSL_CMP_CTX_push0_genm_ITAV(ctx, itav);
itavs = OSSL_CMP_exec_GENM_ses(ctx);
+ print_errors_PKIStatusInfo(ctx);
sk_OSSL_CMP_ITAV_pop_free(itavs, OSSL_CMP_ITAV_free);
return TEST_int_eq(OSSL_CMP_CTX_get_status(ctx), fixture->expected)
@@ -128,7 +142,7 @@ static int execute_exec_certrequest_ses_test(CMP_SES_TEST_FIXTURE *fixture)
X509 *res = OSSL_CMP_exec_certreq(ctx, fixture->req_type, NULL);
int status = OSSL_CMP_CTX_get_status(ctx);
- OSSL_CMP_CTX_print_errors(ctx);
+ print_errors_PKIStatusInfo(ctx);
if (!TEST_int_eq(status, fixture->expected)
&& !(fixture->expected == OSSL_CMP_PKISTATUS_waiting
&& TEST_int_eq(status, OSSL_CMP_PKISTATUS_trans)))