fix smb leak

remotes/origin/master-1.0.x
Kirby Kuehl 15 years ago committed by Victor Julien
parent 4545d755dd
commit 3a985a9f5f

@ -1205,6 +1205,25 @@ static void *SMBStateAlloc(void) {
*/
static void SMBStateFree(void *s) {
SCEnter();
SMBState *sstate = (SMBState *) s;
DCERPCUuidEntry *item;
while ((item = TAILQ_FIRST(&sstate->dcerpc.dcerpcbindbindack.uuid_list))) {
//printUUID("Free", item);
TAILQ_REMOVE(&sstate->dcerpc.dcerpcbindbindack.uuid_list, item, next);
free(item);
}
if (sstate->dcerpc.dcerpcrequest.stub_data_buffer != NULL) {
free(sstate->dcerpc.dcerpcrequest.stub_data_buffer);
sstate->dcerpc.dcerpcrequest.stub_data_buffer = NULL;
sstate->dcerpc.dcerpcrequest.stub_data_buffer_len = 0;
}
if (sstate->dcerpc.dcerpcresponse.stub_data_buffer != NULL) {
free(sstate->dcerpc.dcerpcresponse.stub_data_buffer);
sstate->dcerpc.dcerpcresponse.stub_data_buffer = NULL;
sstate->dcerpc.dcerpcresponse.stub_data_buffer_len = 0;
}
if (s) {
SCFree(s);

Loading…
Cancel
Save