parser refactoring: ops no longer carry a payload

This commit is contained in:
Felipe Zimmerle
2018-01-25 11:43:39 -03:00
parent a299997e02
commit a6830c76f2
5 changed files with 4112 additions and 4457 deletions

View File

@@ -463,6 +463,43 @@ using modsecurity::operators::Operator;
SETVAR_OPERATION_EQUALS_MINUS
NOT "NOT"
OPERATOR_BEGINS_WITH "OPERATOR_BEGINS_WITH"
OPERATOR_CONTAINS "OPERATOR_CONTAINS"
OPERATOR_CONTAINS_WORD "OPERATOR_CONTAINS_WORD"
OPERATOR_DETECT_SQLI "OPERATOR_DETECT_SQLI"
OPERATOR_DETECT_XSS "OPERATOR_DETECT_XSS"
OPERATOR_ENDS_WITH "OPERATOR_ENDS_WITH"
OPERATOR_EQ "OPERATOR_EQ"
OPERATOR_FUZZY_HASH "OPERATOR_FUZZY_HASH"
OPERATOR_GEOLOOKUP "OPERATOR_GEOLOOKUP"
OPERATOR_GE "OPERATOR_GE"
OPERATOR_GSB_LOOKUP "OPERATOR_GSB_LOOKUP"
OPERATOR_GT "OPERATOR_GT"
OPERATOR_INSPECT_FILE "OPERATOR_INSPECT_FILE"
OPERATOR_IP_MATCH_FROM_FILE "OPERATOR_IP_MATCH_FROM_FILE"
OPERATOR_IP_MATCH "OPERATOR_IP_MATCH"
OPERATOR_LE "OPERATOR_LE"
OPERATOR_LT "OPERATOR_LT"
OPERATOR_PM_FROM_FILE "OPERATOR_PM_FROM_FILE"
OPERATOR_PM "OPERATOR_PM"
OPERATOR_RBL "OPERATOR_RBL"
OPERATOR_RSUB "OPERATOR_RSUB"
OPERATOR_RX_CONTENT_ONLY "Operator RX (content only)"
OPERATOR_RX "OPERATOR_RX"
OPERATOR_STR_EQ "OPERATOR_STR_EQ"
OPERATOR_STR_MATCH "OPERATOR_STR_MATCH"
OPERATOR_UNCONDITIONAL_MATCH "OPERATOR_UNCONDITIONAL_MATCH"
OPERATOR_VALIDATE_BYTE_RANGE "OPERATOR_VALIDATE_BYTE_RANGE"
OPERATOR_VALIDATE_DTD "OPERATOR_VALIDATE_DTD"
OPERATOR_VALIDATE_HASH "OPERATOR_VALIDATE_HASH"
OPERATOR_VALIDATE_SCHEMA "OPERATOR_VALIDATE_SCHEMA"
OPERATOR_VALIDATE_URL_ENCODING "OPERATOR_VALIDATE_URL_ENCODING"
OPERATOR_VALIDATE_UTF8_ENCODING "OPERATOR_VALIDATE_UTF8_ENCODING"
OPERATOR_VERIFY_CC "OPERATOR_VERIFY_CC"
OPERATOR_VERIFY_CPF "OPERATOR_VERIFY_CPF"
OPERATOR_VERIFY_SSN "OPERATOR_VERIFY_SSN"
OPERATOR_WITHIN "OPERATOR_WITHIN"
CONFIG_DIR_AUDIT_LOG_FMT
JSON
NATIVE
@@ -620,46 +657,7 @@ using modsecurity::operators::Operator;
CONGIG_DIR_SEC_TMP_DIR "CONGIG_DIR_SEC_TMP_DIR"
DIRECTIVE "DIRECTIVE"
DIRECTIVE_SECRULESCRIPT "DIRECTIVE_SECRULESCRIPT"
FREE_TEXT "FREE_TEXT"
FREE_TEXT_QUOTE_MACRO_EXPANSION "FREE_TEXT_QUOTE_MACRO_EXPANSION"
OPERATOR "OPERATOR"
OPERATOR_BEGINS_WITH "OPERATOR_BEGINS_WITH"
OPERATOR_CONTAINS "OPERATOR_CONTAINS"
OPERATOR_CONTAINS_WORD "OPERATOR_CONTAINS_WORD"
OPERATOR_DETECT_SQLI "OPERATOR_DETECT_SQLI"
OPERATOR_DETECT_XSS "OPERATOR_DETECT_XSS"
OPERATOR_ENDS_WITH "OPERATOR_ENDS_WITH"
OPERATOR_EQ "OPERATOR_EQ"
OPERATOR_FUZZY_HASH "OPERATOR_FUZZY_HASH"
OPERATOR_GE "OPERATOR_GE"
OPERATOR_GEOLOOKUP "OPERATOR_GEOLOOKUP"
OPERATOR_GSB_LOOKUP "OPERATOR_GSB_LOOKUP"
OPERATOR_GT "OPERATOR_GT"
OPERATOR_INSPECT_FILE "OPERATOR_INSPECT_FILE"
OPERATOR_IP_MATCH "OPERATOR_IP_MATCH"
OPERATOR_IP_MATCH_FROM_FILE "OPERATOR_IP_MATCH_FROM_FILE"
OPERATOR_LE "OPERATOR_LE"
OPERATOR_LT "OPERATOR_LT"
OPERATOR_PM "OPERATOR_PM"
OPERATOR_PM_FROM_FILE "OPERATOR_PM_FROM_FILE"
OPERATOR_RBL "OPERATOR_RBL"
OPERATOR_RSUB "OPERATOR_RSUB"
OPERATOR_RX "OPERATOR_RX"
OPERATOR_RX_CONTENT_ONLY "Operator RX (content only)"
OPERATOR_STR_EQ "OPERATOR_STR_EQ"
OPERATOR_STR_MATCH "OPERATOR_STR_MATCH"
OPERATOR_UNCONDITIONAL_MATCH "OPERATOR_UNCONDITIONAL_MATCH"
OPERATOR_VALIDATE_BYTE_RANGE "OPERATOR_VALIDATE_BYTE_RANGE"
OPERATOR_VALIDATE_DTD "OPERATOR_VALIDATE_DTD"
OPERATOR_VALIDATE_HASH "OPERATOR_VALIDATE_HASH"
OPERATOR_VALIDATE_SCHEMA "OPERATOR_VALIDATE_SCHEMA"
OPERATOR_VALIDATE_URL_ENCODING "OPERATOR_VALIDATE_URL_ENCODING"
OPERATOR_VALIDATE_UTF8_ENCODING "OPERATOR_VALIDATE_UTF8_ENCODING"
OPERATOR_VERIFY_CC "OPERATOR_VERIFY_CC"
OPERATOR_VERIFY_CPF "OPERATOR_VERIFY_CPF"
OPERATOR_VERIFY_SSN "OPERATOR_VERIFY_SSN"
OPERATOR_WITHIN "OPERATOR_WITHIN"
OP_QUOTE "OP_QUOTE"
QUOTATION_MARK "QUOTATION_MARK"
RUN_TIME_VAR_BLD "RUN_TIME_VAR_BLD"
RUN_TIME_VAR_DUR "RUN_TIME_VAR_DUR"