Support to JSON stuff on serial logging

This commit is contained in:
Victor Hora
2017-10-03 20:50:02 +00:00
committed by Felipe Zimmerle
parent 2988c5bb07
commit 63bef3d142
16 changed files with 7388 additions and 7223 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -445,6 +445,10 @@ using modsecurity::operators::Operator;
SETVAR_OPERATION_EQUALS_MINUS
NOT "NOT"
CONFIG_DIR_AUDIT_LOG_FMT
JSON
NATIVE
ACTION_CTL_RULE_ENGINE "ACTION_CTL_RULE_ENGINE"
;
@@ -746,6 +750,16 @@ audit_log:
driver.m_auditLog->setFilePath1($1);
}
| CONFIG_DIR_AUDIT_LOG_FMT JSON
{
driver.m_auditLog->setFormat(modsecurity::audit_log::AuditLog::JSONAuditLogFormat);
}
| CONFIG_DIR_AUDIT_LOG_FMT NATIVE
{
driver.m_auditLog->setFormat(modsecurity::audit_log::AuditLog::NativeAuditLogFormat);
}
/* SecAuditLogRelevantStatus */
| CONFIG_DIR_AUDIT_STS
{

File diff suppressed because it is too large Load Diff

View File

@@ -267,6 +267,7 @@ CONFIG_DIR_AUDIT_ENG (?i:SecAuditEngine)
CONFIG_DIR_AUDIT_FLE_MOD (?i:SecAuditLogFileMode)
CONFIG_DIR_AUDIT_LOG2 (?i:SecAuditLog2)
CONFIG_DIR_AUDIT_LOG (?i:SecAuditLog)
CONFIG_DIR_AUDIT_LOG_FMT (?i:SecAuditLogFormat)
CONFIG_DIR_AUDIT_LOG_P (?i:SecAuditLogParts)
CONFIG_DIR_AUDIT_STS (?i:SecAuditLogRelevantStatus)
CONFIG_DIR_AUDIT_TPE (?i:SecAuditLogType)
@@ -350,6 +351,9 @@ VAR_FREE_TEXT_QUOTE ([^\']|([^\\]\\\'))+
VAR_FREE_TEXT_SPACE [^ \t\"]+
VAR_FREE_TEXT_SPACE_COMMA [^, \t\"]+
JSON (?i:JSON)
NATIVE (?i:NATIVE)
NEW_LINE [\n\r]+
EQUALS (?i:=)
@@ -597,6 +601,9 @@ EQUALS_MINUS (?i:=\-)
{CONFIG_DIR_AUDIT_LOG_P}[ \t]+{AUDIT_PARTS} { return p::make_CONFIG_DIR_AUDIT_LOG_P(parserSanitizer(strchr(yytext, ' ') + 1), *driver.loc.back()); }
{CONFIG_DIR_AUDIT_LOG_P}[ \t]+["]{AUDIT_PARTS}["] { return p::make_CONFIG_DIR_AUDIT_LOG_P(parserSanitizer(strchr(yytext, ' ') + 1), *driver.loc.back()); }
{CONFIG_DIR_AUDIT_LOG}[ ]{CONFIG_VALUE_PATH} { return p::make_CONFIG_DIR_AUDIT_LOG(strchr(yytext, ' ') + 1, *driver.loc.back()); }
{CONFIG_DIR_AUDIT_LOG_FMT} { return p::make_CONFIG_DIR_AUDIT_LOG_FMT(*driver.loc.back()); }
{JSON} { return p::make_JSON(*driver.loc.back()); }
{NATIVE} { return p::make_NATIVE(*driver.loc.back()); }
{CONFIG_DIR_AUDIT_LOG}[ ]["]{CONFIG_VALUE_PATH}["] { return p::make_CONFIG_DIR_AUDIT_LOG(parserSanitizer(strchr(yytext, ' ') + 1), *driver.loc.back()); }
{CONFIG_DIR_AUDIT_STS}[ ]{FREE_TEXT_NEW_LINE} { return p::make_CONFIG_DIR_AUDIT_STS(parserSanitizer(strchr(yytext, ' ') + 1), *driver.loc.back()); }
{CONFIG_DIR_AUDIT_STS}[ \t]+["]{NEW_LINE_FREE_TEXT}["] { return p::make_CONFIG_DIR_AUDIT_STS(parserSanitizer(strchr(yytext, ' ') + 1), *driver.loc.back()); }