mirror of https://github.com/wolfSSL/wolfssl.git
added deallocator for DtlsPools
parent
f64f326ab3
commit
54e06cd04e
|
@ -2013,10 +2013,7 @@ void SSL_ResourceFree(WOLFSSL* ssl)
|
|||
if (ssl->buffers.outputBuffer.dynamicFlag)
|
||||
ShrinkOutputBuffer(ssl);
|
||||
#ifdef WOLFSSL_DTLS
|
||||
if (ssl->dtls_pool != NULL) {
|
||||
DtlsPoolReset(ssl);
|
||||
XFREE(ssl->dtls_pool, ssl->heap, DYNAMIC_TYPE_NONE);
|
||||
}
|
||||
DtlsPoolDelete(ssl);
|
||||
if (ssl->dtls_msg_list != NULL) {
|
||||
DtlsMsgListDelete(ssl->dtls_msg_list, ssl->heap);
|
||||
ssl->dtls_msg_list = NULL;
|
||||
|
@ -2132,10 +2129,10 @@ void FreeHandshakeResources(WOLFSSL* ssl)
|
|||
|
||||
#ifdef WOLFSSL_DTLS
|
||||
/* DTLS_POOL */
|
||||
if (ssl->options.dtls && ssl->dtls_pool != NULL) {
|
||||
DtlsPoolReset(ssl);
|
||||
XFREE(ssl->dtls_pool, ssl->heap, DYNAMIC_TYPE_DTLS_POOL);
|
||||
ssl->dtls_pool = NULL;
|
||||
if (ssl->options.dtls) {
|
||||
DtlsPoolDelete(ssl);
|
||||
DtlsMsgListDelete(ssl->dtls_msg_list, ssl->heap);
|
||||
ssl->dtls_msg_list = NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -2296,6 +2293,16 @@ void DtlsPoolReset(WOLFSSL* ssl)
|
|||
}
|
||||
|
||||
|
||||
void DtlsPoolDelete(WOLFSSL* ssl)
|
||||
{
|
||||
if (ssl->dtls_pool != NULL) {
|
||||
DtlsPoolReset(ssl);
|
||||
XFREE(ssl->dtls_pool, ssl->heap, DYNAMIC_TYPE_DTLS_POOL);
|
||||
ssl->dtls_pool = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int DtlsPoolTimeout(WOLFSSL* ssl)
|
||||
{
|
||||
int result = -1;
|
||||
|
|
|
@ -2671,6 +2671,7 @@ WOLFSSL_LOCAL int GrowInputBuffer(WOLFSSL* ssl, int size, int usedLength);
|
|||
WOLFSSL_LOCAL int DtlsPoolTimeout(WOLFSSL*);
|
||||
WOLFSSL_LOCAL int DtlsPoolSend(WOLFSSL*);
|
||||
WOLFSSL_LOCAL void DtlsPoolReset(WOLFSSL*);
|
||||
WOLFSSL_LOCAL void DtlsPoolDelete(WOLFSSL*);
|
||||
|
||||
WOLFSSL_LOCAL DtlsMsg* DtlsMsgNew(word32, void*);
|
||||
WOLFSSL_LOCAL void DtlsMsgDelete(DtlsMsg*, void*);
|
||||
|
|
Loading…
Reference in New Issue