|
|
|
@ -172,6 +172,7 @@ void StreamTcpSessionClear(void *ssnptr)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
SCEnter();
|
|
|
|
SCEnter();
|
|
|
|
StreamMsg *smsg = NULL;
|
|
|
|
StreamMsg *smsg = NULL;
|
|
|
|
|
|
|
|
TcpStateQueue *q, *q_next;
|
|
|
|
|
|
|
|
|
|
|
|
TcpSession *ssn = (TcpSession *)ssnptr;
|
|
|
|
TcpSession *ssn = (TcpSession *)ssnptr;
|
|
|
|
if (ssn == NULL)
|
|
|
|
if (ssn == NULL)
|
|
|
|
@ -210,6 +211,16 @@ void StreamTcpSessionClear(void *ssnptr)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
ssn->toclient_smsg_head = NULL;
|
|
|
|
ssn->toclient_smsg_head = NULL;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
q = ssn->queue;
|
|
|
|
|
|
|
|
while (q != NULL) {
|
|
|
|
|
|
|
|
q_next = q->next;
|
|
|
|
|
|
|
|
SCFree(q);
|
|
|
|
|
|
|
|
q = q_next;
|
|
|
|
|
|
|
|
StreamTcpDecrMemuse((uint64_t)sizeof(TcpStateQueue));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
ssn->queue = NULL;
|
|
|
|
|
|
|
|
ssn->queue_len = 0;
|
|
|
|
|
|
|
|
|
|
|
|
memset(ssn, 0, sizeof(TcpSession));
|
|
|
|
memset(ssn, 0, sizeof(TcpSession));
|
|
|
|
PoolThreadReturn(ssn_pool, ssn);
|
|
|
|
PoolThreadReturn(ssn_pool, ssn);
|
|
|
|
#ifdef DEBUG
|
|
|
|
#ifdef DEBUG
|
|
|
|
|