* log module (e.g. http.log) with different output ctx'. */
typedef struct OutputFiledataLogger_ {
FiledataLogger LogFunc;
- OutputCtx *output_ctx;
+ void *initdata;
struct OutputFiledataLogger_ *next;
const char *name;
LoggerId logger_id;
static OutputFiledataLogger *list = NULL;
int OutputRegisterFiledataLogger(LoggerId id, const char *name, FiledataLogger LogFunc,
- OutputCtx *output_ctx, ThreadInitFunc ThreadInit, ThreadDeinitFunc ThreadDeinit)
+ void *initdata, ThreadInitFunc ThreadInit, ThreadDeinitFunc ThreadDeinit)
{
OutputFiledataLogger *op = SCCalloc(1, sizeof(*op));
if (op == NULL)
return -1;
op->LogFunc = LogFunc;
- op->output_ctx = output_ctx;
+ op->initdata = initdata;
op->name = name;
op->logger_id = id;
op->ThreadInit = ThreadInit;
while (logger) {
if (logger->ThreadInit) {
void *retptr = NULL;
- if (logger->ThreadInit(tv, (void *)logger->output_ctx, &retptr) == TM_ECODE_OK) {
+ if (logger->ThreadInit(tv, logger->initdata, &retptr) == TM_ECODE_OK) {
OutputLoggerThreadStore *ts = SCCalloc(1, sizeof(*ts));
/* todo */ BUG_ON(ts == NULL);
typedef int (*FiledataLogger)(ThreadVars *, void *thread_data, const Packet *, File *, void *tx,
const uint64_t tx_id, const uint8_t *, uint32_t, uint8_t, uint8_t dir);
-int OutputRegisterFiledataLogger(LoggerId id, const char *name, FiledataLogger LogFunc, OutputCtx *,
- ThreadInitFunc ThreadInit, ThreadDeinitFunc ThreadDeinit);
+int OutputRegisterFiledataLogger(LoggerId id, const char *name, FiledataLogger LogFunc,
+ void *initdata, ThreadInitFunc ThreadInit, ThreadDeinitFunc ThreadDeinit);
void OutputFiledataLoggerRegister(void);