diff --git a/src/internal.c b/src/internal.c index 4934ff843..5e5b4352e 100644 --- a/src/internal.c +++ b/src/internal.c @@ -8620,14 +8620,6 @@ static int DoVerifyCallback(WOLFSSL* ssl, int ret, ProcPeerCertArgs* args) wolfSSL_sk_X509_free(store->chain); store->chain = NULL; #endif - #ifdef WOLFSSL_SMALL_STACK - XFREE(domain, ssl->heap, DYNAMIC_TYPE_STRING); - #ifdef OPENSSL_EXTRA - XFREE(x509, ssl->heap, DYNAMIC_TYPE_X509); - #endif - XFREE(store, ssl->heap, DYNAMIC_TYPE_X509_STORE); - #endif - #ifdef SESSION_CERTS if (store->discardSessionCerts) { WOLFSSL_MSG("Verify callback requested discard sess certs"); @@ -8637,6 +8629,13 @@ static int DoVerifyCallback(WOLFSSL* ssl, int ret, ProcPeerCertArgs* args) #endif } #endif /* SESSION_CERTS */ + #ifdef WOLFSSL_SMALL_STACK + XFREE(domain, ssl->heap, DYNAMIC_TYPE_STRING); + #ifdef OPENSSL_EXTRA + XFREE(x509, ssl->heap, DYNAMIC_TYPE_X509); + #endif + XFREE(store, ssl->heap, DYNAMIC_TYPE_X509_STORE); + #endif } if (ret != 0) { diff --git a/wolfssl/test.h b/wolfssl/test.h index 004c10800..0a8849c6b 100644 --- a/wolfssl/test.h +++ b/wolfssl/test.h @@ -1471,6 +1471,8 @@ static WC_INLINE int myVerify(int preverify, WOLFSSL_X509_STORE_CTX* store) * store->store: WOLFSSL_X509_STORE with CA cert chain * store->store->cm: WOLFSSL_CERT_MANAGER * store->ex_data: The WOLFSSL object pointer + * store->discardSessionCerts: When set to non-zero value session certs + will be discarded (only with SESSION_CERTS) */ printf("In verification callback, error = %d, %s\n", store->error,