diff --git a/src/output-filedata.c b/src/output-filedata.c index 54900bf82a..2b09fe3114 100644 --- a/src/output-filedata.c +++ b/src/output-filedata.c @@ -61,10 +61,6 @@ typedef struct OutputFiledataLogger_ { } OutputFiledataLogger; static OutputFiledataLogger *list = NULL; -static char g_waldo[PATH_MAX] = ""; -static SCMutex g_waldo_mutex = SCMUTEX_INITIALIZER; -static int g_waldo_init = 0; -static int g_waldo_deinit = 0; int OutputRegisterFiledataLogger(LoggerId id, const char *name, FiledataLogger LogFunc, OutputCtx *output_ctx, ThreadInitFunc ThreadInit, @@ -252,61 +248,6 @@ static TmEcode OutputFiledataLog(ThreadVars *tv, Packet *p, void *thread_data) return TM_ECODE_OK; } -/** - * \internal - * - * \brief Open the waldo file (if available) and load the file_id - * - * \param path full path for the waldo file - */ -static void LogFiledataLogLoadWaldo(const char *path) -{ - char line[16] = ""; - unsigned int id = 0; - - FILE *fp = fopen(path, "r"); - if (fp == NULL) { - SCLogInfo("couldn't open waldo: %s", strerror(errno)); - SCReturn; - } - - if (fgets(line, (int)sizeof(line), fp) != NULL) { - if (sscanf(line, "%10u", &id) == 1) { - SCLogInfo("id %u", id); - SC_ATOMIC_SET(g_file_store_id, id); - } - } - fclose(fp); -} - -/** - * \internal - * - * \brief Store the waldo file based on the file_id - * - * \param path full path for the waldo file - */ -static void LogFiledataLogStoreWaldo(const char *path) -{ - char line[16] = ""; - - if (SC_ATOMIC_GET(g_file_store_id) == 1) { - SCReturn; - } - - FILE *fp = fopen(path, "w"); - if (fp == NULL) { - SCLogInfo("couldn't open waldo: %s", strerror(errno)); - SCReturn; - } - - snprintf(line, sizeof(line), "%u\n", SC_ATOMIC_GET(g_file_store_id)); - if (fwrite(line, strlen(line), 1, fp) != 1) { - SCLogError(SC_ERR_FWRITE, "fwrite failed: %s", strerror(errno)); - } - fclose(fp); -} - /** \brief thread init for the tx logger * This will run the thread init functions for the individual registered * loggers */ @@ -356,56 +297,6 @@ static TmEcode OutputFiledataLogThreadInit(ThreadVars *tv, const void *initdata, logger = logger->next; } - - SCMutexLock(&g_waldo_mutex); - if (g_waldo_init == 0) { - ConfNode *node = ConfGetNode("file-store-waldo"); - if (node == NULL) { - ConfNode *outputs = ConfGetNode("outputs"); - if (outputs) { - ConfNode *output; - TAILQ_FOREACH(output, &outputs->head, next) { - /* we only care about file and file-store */ - if (!(strcmp(output->val, "file") == 0 || strcmp(output->val, "file-store") == 0)) - continue; - - ConfNode *file = ConfNodeLookupChild(output, output->val); - BUG_ON(file == NULL); - if (file == NULL) { - SCLogDebug("file-store failed, lets try 'file'"); - file = ConfNodeLookupChild(outputs, "file"); - if (file == NULL) - SCLogDebug("file failed as well, giving up"); - } - - if (file != NULL) { - node = ConfNodeLookupChild(file, "waldo"); - if (node == NULL) - SCLogDebug("no waldo node"); - } - } - } - } - if (node != NULL) { - const char *s_default_log_dir = NULL; - s_default_log_dir = ConfigGetLogDirectory(); - - const char *waldo = node->val; - SCLogDebug("loading waldo %s", waldo); - if (waldo != NULL && strlen(waldo) > 0) { - if (PathIsAbsolute(waldo)) { - snprintf(g_waldo, sizeof(g_waldo), "%s", waldo); - } else { - snprintf(g_waldo, sizeof(g_waldo), "%s/%s", s_default_log_dir, waldo); - } - - SCLogDebug("loading waldo file %s", g_waldo); - LogFiledataLogLoadWaldo(g_waldo); - } - } - g_waldo_init = 1; - } - SCMutexUnlock(&g_waldo_mutex); return TM_ECODE_OK; } @@ -426,16 +317,6 @@ static TmEcode OutputFiledataLogThreadDeinit(ThreadVars *tv, void *thread_data) logger = logger->next; } - SCMutexLock(&g_waldo_mutex); - if (g_waldo_deinit == 0) { - if (strlen(g_waldo) > 0) { - SCLogDebug("we have a waldo at %s", g_waldo); - LogFiledataLogStoreWaldo(g_waldo); - } - g_waldo_deinit = 1; - } - SCMutexUnlock(&g_waldo_mutex); - #ifdef HAVE_MAGIC MagicDeinitContext(op_thread_data->magic_ctx); #endif