92 Commits

Author SHA1 Message Date
Felipe Zimmerle
e12d95b10d Adds support to the TX collection and setvar action 2015-08-07 14:27:43 -03:00
Felipe Zimmerle
a9e0fbb41e Adds variable variations test cases 2015-08-07 14:27:43 -03:00
Felipe Zimmerle
4308ee0280 Adds t:none transformation 2015-08-05 23:54:12 -03:00
Felipe Zimmerle
6dad6af4a9 Adds RemoveNulls trasnformation 2015-08-05 22:10:43 -03:00
Felipe Zimmerle
1924b4ebca Adds lowercase transformation 2015-08-05 14:48:28 -03:00
Felipe Zimmerle
391002c665 Adds support for jsDecode transformation 2015-08-05 14:41:43 -03:00
Felipe Zimmerle
4f47651a6f Adds variable TX and action "capture". 2015-08-05 10:07:47 -03:00
Felipe Zimmerle
be4a0cb41c Adds REQUEST_COOKIES and REQUEST_COOKIES_NAMES variables 2015-08-04 17:57:09 -03:00
Felipe Zimmerle
57ceef1fe6 Update test cases submodule 2015-08-04 14:26:55 -03:00
Felipe Zimmerle
774d897351 Adds support to the operator @ipMatchFromFile and @ipMatchF 2015-08-03 17:21:41 -03:00
Felipe Zimmerle
17f88f5821 Using libpcre instead of c++11 regex 2015-08-03 13:45:09 -03:00
Felipe Zimmerle
a4cf218a3e Removes chrono references to make it compile with gcc 4.8.x 2015-08-02 22:14:32 -03:00
Felipe Zimmerle
f811ec6518 Adds support to @ipMatch operator 2015-07-30 20:58:19 -03:00
Felipe Zimmerle
bf0169b528 unit-tests: Releases operator after use 2015-07-30 20:22:19 -03:00
Felipe Zimmerle
c2d33823f5 Adds method init to Operator class 2015-07-27 22:44:34 -03:00
Felipe Zimmerle
e016b72a8e Handles better the memory utilization
- Added reference counts to Rule and AuditLog;
- Some memory leaks were removed, including GeoLookup;
- Deal better with parser errors;
- Overriding the AutlogLogWritter destructor.
2015-07-26 22:51:57 -03:00
Felipe Zimmerle
0e7c13e3c0 Adds more regression tests to SecRemoteRules 2015-07-25 08:18:59 -03:00
Felipe Zimmerle
7ba5c76c78 Returns elegant errors if rules load operation failed 2015-07-25 03:04:57 -03:00
Felipe Zimmerle
b8f7fb441d Adds support to SecRemoteRules and Include directives
This commit includes a refactoring on important pieces of the parser
to allow it work in a stack fashion. Driver and Rules classes were
simplified and the RulesProperties class was created.
2015-07-24 22:57:29 -03:00
Felipe Zimmerle
76b34af357 Adds support to load remote rules 2015-07-23 14:40:56 -03:00
Felipe Zimmerle
dc0b13ad74 Cosmetic: fix copyright header 2015-07-22 23:03:09 -03:00
Felipe Zimmerle
261ee9f115 Adds support to BodyLimitAction and support for parser errors 2015-07-22 21:31:58 -03:00
Felipe Zimmerle
30b2624ec5 Adds support to parser error 2015-07-22 21:29:15 -03:00
Felipe Zimmerle
5b3fd479fc regression: better format errors, making easy to read the output 2015-07-22 21:29:06 -03:00
Felipe Zimmerle
3f883df763 regression: Sorts test cases by file, making easy to read 2015-07-22 21:28:58 -03:00
Felipe Zimmerle
3f8fa64c9a regression: Allows to specify a single file or directory
Tests were directory driven. Now it is possible to specify a single
test case file.
2015-07-22 21:26:30 -03:00
Felipe Zimmerle
a4af4f32cd Fix transformations regression test 2015-07-22 21:24:25 -03:00
Felipe Zimmerle
667586c42e Adds UNIQUE_ID variable 2015-07-22 21:24:21 -03:00
Felipe Zimmerle
d20a47fb03 Adds support to the variables: REMOTE_HOST, SERVER_{ADDR,PORT} 2015-07-22 21:24:18 -03:00
Felipe Zimmerle
ae81bb1433 Adds support to the variables: RESPONSE{BODY,CONTENT_LENGTH,CONTENT_TYPE} 2015-07-22 21:24:14 -03:00
Felipe Zimmerle
ec34f676c6 Adds support to variables: REQUEST_{METHOD,PROTOCOL,URI,URI_RAW} 2015-07-22 21:23:48 -03:00
Felipe Zimmerle
bc925e01e6 Adds support to the REQUEST_LINE variable 2015-07-22 21:23:43 -03:00
Felipe Zimmerle
cb722c74b9 Adds support to REQUEST_HEADERS{_NAMES} and RESPONSE_HEADERS{_NAMES} vars 2015-07-22 21:22:32 -03:00
Felipe Zimmerle
97c0d561f6 Adds suppor to the REQUEST_FILENAME variable 2015-07-22 21:19:36 -03:00
Felipe Zimmerle
94eddfcf48 Adds support to the REQUEST_BODY_LENGTH variable 2015-07-22 21:19:30 -03:00
Felipe Zimmerle
b6221c9811 Adds support to REQUEST_BODY and REQUEST_BASENAME variables 2015-07-22 21:19:15 -03:00
Felipe Zimmerle
6f7d3fa67a Adds support to the TIME* variables 2015-07-22 01:07:42 -03:00
Felipe Zimmerle
ad442fb201 Fix transformation regression test 2015-07-22 00:39:01 -03:00
Felipe Zimmerle
dbbb2c526e Adds support to REMOTE_PORT variable 2015-07-21 23:21:15 -03:00
Felipe Zimmerle
e8476771e6 Adds support to REMOTE_HOST variable 2015-07-21 23:14:56 -03:00
Felipe Zimmerle
cc576533b3 Adds regression test to the REMOTE_HOST variable 2015-07-21 23:07:49 -03:00
Felipe Zimmerle
f05632acb6 Adds regression test for the REMOTE_ADDR variable 2015-07-21 23:07:07 -03:00
Felipe Zimmerle
6af9e8e42a Fix QUERY_STRING variable
QUERY_STRING should be populated using the raw string.
2015-07-21 23:02:55 -03:00
Felipe Zimmerle
7f76bb6df1 Adds PATH_INFO variable 2015-07-21 22:29:52 -03:00
Felipe Zimmerle
62fece7823 Adds support to SecResponseBodyLimit directive and OUTBOUND_DATA_ERROR var 2015-07-21 19:46:15 -03:00
Felipe Zimmerle
8e59b1822c Adds support to variable MULTIPART_UNMATCHED_BOUNDARY 2015-07-21 19:33:58 -03:00
Felipe Zimmerle
a9147b76ad Adds support to the MULTIPART_STRICT_ERROR variable
Still missing to check:
  - MULTIPART_FILE_LIMIT_EXCEEDED
  - REQBODY_PROCESSOR_ERROR
  - MULTIPART_HEADER_FOLDING
  - MULTIPART_INVALID_HEADER_FOLDING
2015-07-21 17:47:00 -03:00
Felipe Zimmerle
09beb1a5c0 Adds support to MULTIPART_NAME variable 2015-07-21 15:54:49 -03:00
Felipe Zimmerle
954e275b32 Adds support to MULTIPART_FILENAME variable 2015-07-21 15:42:24 -03:00
Felipe Zimmerle
abec93263b Adds support to MULTIPART_CRLF_LF_LINES variable 2015-07-21 15:29:13 -03:00