suricata
log-cf-common.c File Reference
#include "log-cf-common.h"
#include "util-print.h"
#include "util-unittest.h"
Include dependency graph for log-cf-common.c:

Go to the source code of this file.

Functions

LogCustomFormatNodeLogCustomFormatNodeAlloc ()
 Creates a custom format node. More...
 
LogCustomFormatLogCustomFormatAlloc ()
 Creates a custom format. More...
 
void LogCustomFormatNodeFree (LogCustomFormatNode *node)
 Frees memory held by a custom format node. More...
 
void LogCustomFormatFree (LogCustomFormat *cf)
 Frees memory held by a custom format. More...
 
int LogCustomFormatParse (LogCustomFormat *cf, const char *format)
 Parses and saves format nodes for custom format. More...
 
void LogCustomFormatAddNode (LogCustomFormat *cf, LogCustomFormatNode *node)
 Adds a node to custom format. More...
 
void LogCustomFormatWriteTimestamp (MemBuffer *buffer, const char *fmt, const struct timeval *ts)
 Writes a timestamp with given format into a MemBuffer. More...
 
void LogCustomFormatRegister (void)
 

Detailed Description

Function Documentation

void LogCustomFormatAddNode ( LogCustomFormat cf,
LogCustomFormatNode node 
)

Adds a node to custom format.

Parameters
LogCustomFormat* cf - custom format
LogCustomFormatNode* node - node to add

Definition at line 183 of file log-cf-common.c.

References LogCustomFormat_::cf_n, LogCustomFormat_::cf_nodes, LogCustomFormatNode_::data, LOG_MAXN_NODES, LogCustomFormatNode_::maxlen, SC_WARN_LOG_CF_TOO_MANY_NODES, SCLogDebug, SCLogWarning, and LogCustomFormatNode_::type.

Referenced by LogCustomFormatParse().

Here is the caller graph for this function:

LogCustomFormat* LogCustomFormatAlloc ( void  )

Creates a custom format.

Return values
LogCustomFormat* ptr if created
NULLif failed to allocate

Definition at line 52 of file log-cf-common.c.

References SC_ERR_MEM_ALLOC, SCCalloc, SCLogError, and unlikely.

Referenced by LogHttpLogInitCtx(), and TLSGetIPInformations().

Here is the caller graph for this function:

void LogCustomFormatFree ( LogCustomFormat cf)

Frees memory held by a custom format.

Parameters
LogCustomFormat* cf - format to relaease

Definition at line 78 of file log-cf-common.c.

References LogCustomFormat_::cf_n, LogCustomFormat_::cf_nodes, LogCustomFormatNodeFree(), and SCFree.

Referenced by LogHttpLogInitCtx(), and TLSGetIPInformations().

Here is the call graph for this function:

Here is the caller graph for this function:

LogCustomFormatNode* LogCustomFormatNodeAlloc ( void  )

Creates a custom format node.

Return values
LogCustomFormatNode* ptr if created
NULLif failed to allocate

Definition at line 37 of file log-cf-common.c.

References SC_ERR_MEM_ALLOC, SCCalloc, SCLogError, and unlikely.

Referenced by LogCustomFormatParse().

Here is the caller graph for this function:

void LogCustomFormatNodeFree ( LogCustomFormatNode node)

Frees memory held by a custom format node.

Parameters
LogCustomFormatNode* node - node to relaease

Definition at line 66 of file log-cf-common.c.

References SCFree.

Referenced by LogCustomFormatFree(), and LogCustomFormatParse().

Here is the caller graph for this function:

int LogCustomFormatParse ( LogCustomFormat cf,
const char *  format 
)

Parses and saves format nodes for custom format.

Parameters
LogCustomFormat* cf - custom format to build
constchar * format - string with format specification

Definition at line 94 of file log-cf-common.c.

References LogCustomFormat_::cf_n, LogCustomFormatNode_::data, LOG_CF_LITERAL, LOG_MAXN_NODES, LOG_NODE_MAXOUTPUTLEN, LOG_NODE_STRLEN, LogCustomFormatAddNode(), LogCustomFormatNodeAlloc(), LogCustomFormatNodeFree(), LogCustomFormatNode_::maxlen, strlcpy(), and LogCustomFormatNode_::type.

Referenced by LogHttpLogInitCtx(), and TLSGetIPInformations().

Here is the call graph for this function:

Here is the caller graph for this function:

void LogCustomFormatRegister ( void  )

Definition at line 269 of file log-cf-common.c.

Referenced by OutputRegisterLoggers().

Here is the caller graph for this function:

void LogCustomFormatWriteTimestamp ( MemBuffer buffer,
const char *  fmt,
const struct timeval *  ts 
)

Writes a timestamp with given format into a MemBuffer.

Parameters
MemBuffer* buffer - where to write
constchar * fmt - format to be used write timestamp
conststruct timeveal *ts - the timetstamp

Definition at line 209 of file log-cf-common.c.

References MemBuffer_::buffer, CreateFormattedTimeString(), FAIL_IF, FAIL_IF_NOT, LogCustomFormatWriteTimestamp(), MemBufferCreateNew(), MemBufferFree(), MemBuffer_::offset, PrintRawUriBuf(), SCLocalTime(), MemBuffer_::size, TIMESTAMP_DEFAULT_FORMAT, and UtRegisterTest().

Referenced by LogCustomFormatWriteTimestamp(), and TLSGetIPInformations().

Here is the call graph for this function:

Here is the caller graph for this function: