mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-01 03:34:39 +02:00
fix defrag memory errors
This commit is contained in:
@@ -1832,8 +1832,10 @@ void FreeArrays(WOLFSSL* ssl, int keep)
|
|||||||
XMEMCPY(ssl->session.sessionID, ssl->arrays->sessionID, ID_LEN);
|
XMEMCPY(ssl->session.sessionID, ssl->arrays->sessionID, ID_LEN);
|
||||||
ssl->session.sessionIDSz = ssl->arrays->sessionIDSz;
|
ssl->session.sessionIDSz = ssl->arrays->sessionIDSz;
|
||||||
}
|
}
|
||||||
if (ssl->arrays)
|
if (ssl->arrays) {
|
||||||
XFREE(ssl->arrays->pendingMsg, ssl->heap, DYNAMIC_TYPE_ARRAYS);
|
XFREE(ssl->arrays->pendingMsg, ssl->heap, DYNAMIC_TYPE_ARRAYS);
|
||||||
|
ssl->arrays->pendingMsg = NULL;
|
||||||
|
}
|
||||||
XFREE(ssl->arrays, ssl->heap, DYNAMIC_TYPE_CERT);
|
XFREE(ssl->arrays, ssl->heap, DYNAMIC_TYPE_CERT);
|
||||||
ssl->arrays = NULL;
|
ssl->arrays = NULL;
|
||||||
}
|
}
|
||||||
@@ -5131,6 +5133,8 @@ static int DoHandShakeMsg(WOLFSSL* ssl, byte* input, word32* inOutIdx,
|
|||||||
ssl->arrays->pendingMsg = (byte*)XMALLOC(size + HANDSHAKE_HEADER_SZ,
|
ssl->arrays->pendingMsg = (byte*)XMALLOC(size + HANDSHAKE_HEADER_SZ,
|
||||||
ssl->heap,
|
ssl->heap,
|
||||||
DYNAMIC_TYPE_ARRAYS);
|
DYNAMIC_TYPE_ARRAYS);
|
||||||
|
if (ssl->arrays->pendingMsg == NULL)
|
||||||
|
return MEMORY_E;
|
||||||
XMEMCPY(ssl->arrays->pendingMsg,
|
XMEMCPY(ssl->arrays->pendingMsg,
|
||||||
input + *inOutIdx - HANDSHAKE_HEADER_SZ, totalSz);
|
input + *inOutIdx - HANDSHAKE_HEADER_SZ, totalSz);
|
||||||
ssl->arrays->pendingMsgOffset = totalSz;
|
ssl->arrays->pendingMsgOffset = totalSz;
|
||||||
|
Reference in New Issue
Block a user