@@ -19199,6 +19199,31 @@ static int test_wolfSSL_OCSP_REQ_CTX(void)
1919919199 return EXPECT_RESULT();
1920019200}
1920119201
19202+ static int test_wolfSSL_X509_get1_ca_issuers(void)
19203+ {
19204+ EXPECT_DECLS;
19205+ #if (defined(OPENSSL_EXTRA) || defined(OPENSSL_ALL) || \
19206+ defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY)) && \
19207+ defined(WOLFSSL_ASN_CA_ISSUER) && !defined(NO_FILESYSTEM)
19208+ X509* cert = NULL;
19209+ STACK_OF(WOLFSSL_STRING) *skStr = NULL;
19210+ WOLFSSL_STRING url = NULL;
19211+ const char* expected = "http://example.com/ca.pem";
19212+
19213+ ExpectNull(wolfSSL_X509_get1_ca_issuers(NULL));
19214+ ExpectNotNull(cert = wolfSSL_X509_load_certificate_file(
19215+ "certs/aia/ca-issuers-cert.pem", WOLFSSL_FILETYPE_PEM));
19216+ ExpectNotNull(skStr = wolfSSL_X509_get1_ca_issuers(cert));
19217+ ExpectIntEQ(wolfSSL_sk_WOLFSSL_STRING_num(skStr), 1);
19218+ ExpectNotNull(url = wolfSSL_sk_WOLFSSL_STRING_value(skStr, 0));
19219+ ExpectIntEQ(XSTRCMP(url, expected), 0);
19220+
19221+ wolfSSL_X509_email_free(skStr);
19222+ wolfSSL_X509_free(cert);
19223+ #endif
19224+ return EXPECT_RESULT();
19225+ }
19226+
1920219227static int test_no_op_functions(void)
1920319228{
1920419229 EXPECT_DECLS;
@@ -31666,6 +31691,7 @@ TEST_CASE testCases[] = {
3166631691 TEST_DECL(test_wolfSSL_OCSP_resp_get0),
3166731692 TEST_DECL(test_wolfSSL_OCSP_parse_url),
3166831693 TEST_DECL(test_wolfSSL_OCSP_REQ_CTX),
31694+ TEST_DECL(test_wolfSSL_X509_get1_ca_issuers),
3166931695
3167031696 TEST_DECL(test_wolfSSL_PEM_read),
3167131697
0 commit comments