diff --git a/src/ssl.c b/src/ssl.c index f9c18f1e6..ceb560116 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -9713,6 +9713,7 @@ void* wolfSSL_X509V3_EXT_d2i(WOLFSSL_X509_EXTENSION* ext) aiaEntry->obj, aiaEntry->objSz); if (ret != WOLFSSL_SUCCESS) { WOLFSSL_MSG("ASN1_STRING_set() failed"); + wolfSSL_ASN1_STRING_free(ad->location->d.uniformResourceIdentifier); wolfSSL_ASN1_OBJECT_free(ad->method); XFREE(aia, NULL, DYNAMIC_TYPE_X509_EXT); XFREE(ad->location, NULL, DYNAMIC_TYPE_OPENSSL); diff --git a/tests/api.c b/tests/api.c index 661af1dab..3aa89f7af 100644 --- a/tests/api.c +++ b/tests/api.c @@ -1133,8 +1133,9 @@ static int test_cm_load_ca_file(const char* ca_cert_file) } #endif - free(cert_buf); } + free(cert_buf); + return ret; } #endif /* !NO_FILESYSTEM && !NO_CERTS */