suricata
output-file.c File Reference
#include "suricata-common.h"
#include "output.h"
#include "output-file.h"
#include "app-layer-parser.h"
#include "detect-filemagic.h"
#include "util-file.h"
#include "util-magic.h"
#include "util-profiling.h"
#include "util-validate.h"
Include dependency graph for output-file.c:

Go to the source code of this file.

Data Structures

struct  OutputFileLogger_
 

Typedefs

typedef struct OutputFileLogger_ OutputFileLogger
 

Functions

int SCOutputRegisterFileLogger (LoggerId id, const char *name, SCFileLogger LogFunc, void *initdata, ThreadInitFunc ThreadInit, ThreadDeinitFunc ThreadDeinit)
 Register a file logger. More...
 
void OutputFileLogFfc (ThreadVars *tv, OutputFileLoggerThreadData *op_thread_data, Packet *p, FileContainer *ffc, void *txv, const uint64_t tx_id, AppLayerTxData *txd, const bool file_close, const bool file_trunc, uint8_t dir)
 
TmEcode OutputFileLogThreadInit (ThreadVars *tv, OutputFileLoggerThreadData **data)
 thread init for the file logger This will run the thread init functions for the individual registered loggers More...
 
TmEcode OutputFileLogThreadDeinit (ThreadVars *tv, OutputFileLoggerThreadData *op_thread_data)
 
void OutputFileLoggerRegister (void)
 
void OutputFileShutdown (void)
 

Variables

bool g_file_logger_enabled = false
 

Detailed Description

Author
Victor Julien victo.nosp@m.r@in.nosp@m.linia.nosp@m.c.ne.nosp@m.t

AppLayer File Logger Output registration functions

Definition in file output-file.c.

Typedef Documentation

◆ OutputFileLogger

Function Documentation

◆ OutputFileLogFfc()

void OutputFileLogFfc ( ThreadVars tv,
OutputFileLoggerThreadData op_thread_data,
Packet p,
FileContainer ffc,
void *  txv,
const uint64_t  tx_id,
AppLayerTxData txd,
const bool  file_close,
const bool  file_trunc,
uint8_t  dir 
)

◆ OutputFileLoggerRegister()

void OutputFileLoggerRegister ( void  )

Internal function: private API.

Definition at line 235 of file output-file.c.

◆ OutputFileLogThreadDeinit()

TmEcode OutputFileLogThreadDeinit ( ThreadVars tv,
OutputFileLoggerThreadData op_thread_data 
)

Definition at line 211 of file output-file.c.

References OutputFileLoggerThreadData_::store.

◆ OutputFileLogThreadInit()

TmEcode OutputFileLogThreadInit ( ThreadVars tv,
OutputFileLoggerThreadData **  data 
)

thread init for the file logger This will run the thread init functions for the individual registered loggers

Definition at line 164 of file output-file.c.

References SCCalloc, SCFree, SCLogDebug, and TM_ECODE_FAILED.

◆ OutputFileShutdown()

void OutputFileShutdown ( void  )

Internal function: private API.

Definition at line 239 of file output-file.c.

◆ SCOutputRegisterFileLogger()

int SCOutputRegisterFileLogger ( LoggerId  id,
const char *  name,
SCFileLogger  LogFunc,
void *  initdata,
ThreadInitFunc  ThreadInit,
ThreadDeinitFunc  ThreadDeinit 
)

Register a file logger.

Parameters
logger_idAn ID used to distinguish this logger from others while profiling.
nameAn informational name for this logger. Used only for debugging.
LogFuncA function that will be called to log each file to be logged.
initdataInitialization data that will pass to the ThreadInitFunc.
ThreadInitFuncThread initialization function.
ThreadDeinitFuncThread de-initialization function.
Return values
0on success, -1 on failure.

Definition at line 56 of file output-file.c.

Variable Documentation

◆ g_file_logger_enabled

bool g_file_logger_enabled = false

Definition at line 39 of file output-file.c.