Merge pull request #337 from dgarske/WarnDoubleFree

Fixes scan-build warning with "--enable-opensslextra --disable-memory"
This commit is contained in:
Kaleb Joseph Himes
2016-03-09 16:28:18 -08:00
2 changed files with 3 additions and 4 deletions

View File

@@ -1694,8 +1694,6 @@ void FreeX509(WOLFSSL_X509* x509)
#endif /* OPENSSL_EXTRA */
if (x509->altNames)
FreeAltNames(x509->altNames, NULL);
if (x509->dynamicMemory)
XFREE(x509, NULL, DYNAMIC_TYPE_X509);
}
@@ -1923,7 +1921,7 @@ int InitSSL(WOLFSSL* ssl, WOLFSSL_CTX* ctx)
ssl->buffers.outputBuffer.buffer = ssl->buffers.outputBuffer.staticBuffer;
ssl->buffers.outputBuffer.bufferSize = STATIC_BUFFER_LEN;
#ifdef KEEP_PEER_CERT
#if defined(KEEP_PEER_CERT) || defined(GOAHEAD_WS)
InitX509(&ssl->peerCert, 0);
#endif
@@ -2204,7 +2202,7 @@ void SSL_ResourceFree(WOLFSSL* ssl)
nx_packet_release(ssl->nxCtx.nxPacket);
#endif
#if defined(KEEP_PEER_CERT) || defined(GOAHEAD_WS)
FreeX509(&(ssl->peerCert)); /* clang thinks this frees ssl itslef */
FreeX509(&ssl->peerCert);
#endif
}

View File

@@ -9393,6 +9393,7 @@ static void ExternalFreeX509(WOLFSSL_X509* x509)
if (x509) {
if (x509->dynamicMemory) {
FreeX509(x509);
XFREE(x509, NULL, DYNAMIC_TYPE_X509);
} else {
WOLFSSL_MSG("free called on non dynamic object, not freeing");
}