Use wolfSSL_X509_free to free ourCert

This commit is contained in:
Juliusz Sosinowicz
2021-01-25 19:29:07 +01:00
parent 4b47bf7b4e
commit 4da9ade290
2 changed files with 8 additions and 18 deletions

View File

@@ -1850,8 +1850,7 @@ void SSL_CtxResourceFree(WOLFSSL_CTX* ctx)
FreeDer(&ctx->certificate); FreeDer(&ctx->certificate);
#ifdef KEEP_OUR_CERT #ifdef KEEP_OUR_CERT
if (ctx->ourCert && ctx->ownOurCert) { if (ctx->ourCert && ctx->ownOurCert) {
FreeX509(ctx->ourCert); wolfSSL_X509_free(ctx->ourCert);
XFREE(ctx->ourCert, ctx->heap, DYNAMIC_TYPE_X509);
ctx->ourCert = NULL; ctx->ourCert = NULL;
} }
#endif /* KEEP_OUR_CERT */ #endif /* KEEP_OUR_CERT */

View File

@@ -5461,11 +5461,8 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff,
if (ssl->buffers.weOwnCert) { if (ssl->buffers.weOwnCert) {
FreeDer(&ssl->buffers.certificate); FreeDer(&ssl->buffers.certificate);
#ifdef KEEP_OUR_CERT #ifdef KEEP_OUR_CERT
FreeX509(ssl->ourCert); wolfSSL_X509_free(ssl->ourCert);
if (ssl->ourCert) {
XFREE(ssl->ourCert, ssl->heap, DYNAMIC_TYPE_X509);
ssl->ourCert = NULL; ssl->ourCert = NULL;
}
#endif #endif
} }
ssl->buffers.certificate = der; ssl->buffers.certificate = der;
@@ -5478,10 +5475,8 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff,
FreeDer(&ctx->certificate); /* Make sure previous is free'd */ FreeDer(&ctx->certificate); /* Make sure previous is free'd */
#ifdef KEEP_OUR_CERT #ifdef KEEP_OUR_CERT
if (ctx->ourCert) { if (ctx->ourCert) {
if (ctx->ownOurCert) { if (ctx->ownOurCert)
FreeX509(ctx->ourCert); wolfSSL_X509_free(ctx->ourCert);
XFREE(ctx->ourCert, ctx->heap, DYNAMIC_TYPE_X509);
}
ctx->ourCert = NULL; ctx->ourCert = NULL;
} }
#endif #endif
@@ -14772,11 +14767,8 @@ int wolfSSL_set_compression(WOLFSSL* ssl)
WOLFSSL_MSG("Unloading cert"); WOLFSSL_MSG("Unloading cert");
FreeDer(&ssl->buffers.certificate); FreeDer(&ssl->buffers.certificate);
#ifdef KEEP_OUR_CERT #ifdef KEEP_OUR_CERT
FreeX509(ssl->ourCert); wolfSSL_X509_free(ssl->ourCert);
if (ssl->ourCert) {
XFREE(ssl->ourCert, ssl->heap, DYNAMIC_TYPE_X509);
ssl->ourCert = NULL; ssl->ourCert = NULL;
}
#endif #endif
ssl->buffers.weOwnCert = 0; ssl->buffers.weOwnCert = 0;
} }
@@ -42189,8 +42181,7 @@ err:
x->derCert->length); x->derCert->length);
#ifdef KEEP_OUR_CERT #ifdef KEEP_OUR_CERT
if (ctx->ourCert != NULL && ctx->ownOurCert) { if (ctx->ourCert != NULL && ctx->ownOurCert) {
FreeX509(ctx->ourCert); wolfSSL_X509_free(ctx->ourCert);
XFREE(ctx->ourCert, ctx->heap, DYNAMIC_TYPE_X509);
} }
#ifndef WOLFSSL_X509_STORE_CERTS #ifndef WOLFSSL_X509_STORE_CERTS
ctx->ourCert = x; ctx->ourCert = x;