diff --git a/src/internal.c b/src/internal.c index 9f16d2f92..ac183a01f 100644 --- a/src/internal.c +++ b/src/internal.c @@ -1919,6 +1919,7 @@ void FreeArrays(CYASSL* ssl, int keep) if (ssl->arrays && keep) { /* keeps session id for user retrieval */ XMEMCPY(ssl->session.sessionID, ssl->arrays->sessionID, ID_LEN); + ssl->session.sessionIDSz = ssl->arrays->sessionIDSz; } XFREE(ssl->arrays, ssl->heap, DYNAMIC_TYPE_ARRAYS); ssl->arrays = NULL; diff --git a/src/ssl.c b/src/ssl.c index 9657f86c7..4d7d05766 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -5623,6 +5623,7 @@ int AddSession(CYASSL* ssl) ssl->arrays->masterSecret, SECRET_LEN); XMEMCPY(SessionCache[row].Sessions[idx].sessionID, ssl->arrays->sessionID, ID_LEN); + SessionCache[row].Sessions[idx].sessionIDSz = ssl->arrays->sessionIDSz; SessionCache[row].Sessions[idx].timeout = ssl->timeout; SessionCache[row].Sessions[idx].bornOn = LowResTimer();