void ReceiveMpipeThreadExitStats(ThreadVars *, void *);
TmEcode DecodeMpipeThreadInit(ThreadVars *, void *, void **);
+TmEcode DecodeMpipeThreadDeinit(ThreadVars *tv, void *data);
TmEcode DecodeMpipe(ThreadVars *, Packet *, void *, PacketQueue *, PacketQueue *);
static int MpipeReceiveOpenIqueue(int rank);
tmm_modules[TMM_DECODEMPIPE].ThreadInit = DecodeMpipeThreadInit;
tmm_modules[TMM_DECODEMPIPE].Func = DecodeMpipe;
tmm_modules[TMM_DECODEMPIPE].ThreadExitPrintStats = NULL;
- tmm_modules[TMM_DECODEMPIPE].ThreadDeinit = NULL;
+ tmm_modules[TMM_DECODEMPIPE].ThreadDeinit = DecodeMpipeThreadDeinit;
tmm_modules[TMM_DECODEMPIPE].RegisterTests = NULL;
tmm_modules[TMM_DECODEMPIPE].cap_flags = 0;
tmm_modules[TMM_DECODEMPIPE].flags = TM_FLAG_DECODE_TM;
SCReturnInt(TM_ECODE_OK);
}
+TmEcode DecodeMpipeThreadDeinit(ThreadVars *tv, void *data)
+{
+ if (data != NULL)
+ DecodeThreadVarsFree(data);
+ SCReturnInt(TM_ECODE_OK);
+}
+
TmEcode DecodeMpipe(ThreadVars *tv, Packet *p, void *data, PacketQueue *pq,
PacketQueue *postq)
{