81 Commits

Author SHA1 Message Date
Ervin Hegedus
30f90a4d5c
Remove unwanted tests from configure.ac 2025-07-28 22:05:52 +02:00
Marc Stern
d704af657c Define _FORTIFY_SOURCE=3 & _GLIBCXX_ASSERTIONS that add glibc/libstdc++ assertions.
See https://www.gnu.org/software/libc/manual/html_node/Source-Fortification.html & https://gcc.gnu.org/wiki/LibstdcxxDebugMode

_GLIBCXX_ASSERTIONS is probably useless as we have pure C here, but let's define it in case some checks are included (or will be in a future version).
As we handle some requests here, that may help to trap a problem.
2024-08-08 16:16:14 +02:00
Marc Stern
dd400f7fa3 Added --enable-assertions in CI
Removed useless line
2024-04-26 17:22:16 +02:00
Marc Stern
5122f89005 defined id_log() only once 2024-04-16 13:28:37 +02:00
Marc Stern
556835c6fe Fixed corrupted character 2024-04-12 18:04:16 +02:00
Marc Stern
38d4b5c898 typo 2024-04-12 16:28:45 +02:00
Marc Stern
931c081ba6 Enforcing -DNDEBUG (default normally) 2024-04-11 13:42:37 +02:00
Marc Stern
bd435277a9 Added --enable-assertions configure flag 2024-04-10 17:10:03 +02:00
Ervin Hegedus
1401ad9131
Remove commented line 2024-02-25 20:34:50 +01:00
Ervin Hegedus
b7a4a4428c
Replace obsolote macros 2024-02-25 20:28:12 +01:00
Martin Vierula
5e17e6dfc4
Configure: correct log message typo 2023-10-17 06:37:08 -07:00
Lars Wendler
4b9edaddfc build: Avoid bashisms
otherwise configure fails to find pcre2 when /bin/sh does not point to bash:

  configure: using pcre v8.45
  ./configure: 16601: test: xno: unexpected operator
  ./configure: 16601: test: xno: unexpected operator
  checking for libpcre2 config script... no
  configure: *** pcre2 library not found.
  configure: error: pcre2 library is required

Signed-off-by: Lars Wendler <polynomial-c@gmx.de>
2023-03-14 11:36:22 +01:00
martinhsv
701365f8f1
Merge pull request #2818 from hughmcmaster/libxml2-mods2
Use pkg-config to find libxml2, falling back to xml2-config if necessary
2022-11-11 16:52:01 -05:00
Martin Vierula
8fc0b519b7
Support for PCRE2 2022-11-08 08:06:39 -08:00
Hugh McMaster
baa38ddbaf build/find_xml.m4: Check for libxml2 via pkg-config then xml2-config
Debian is taking steps to remove xml2-config in favour of pkg-config.
This means ModSecurity will build without libxml2 support by default
on Debian, Ubuntu and other distributions tracking Debian packages.

This patch modifies build/find_xml.m4 to check for libxml2 via
pkg-config, falling back to xml2-config if necessary.
2022-10-16 18:46:26 +11:00
Felipe Zimmerle
6406e2108d
Makes `large stream optimization' optional 2017-10-06 16:43:45 +00:00
Marc Stern
89764f12b0
Fixed typos: LOG_NO_STOPWATCH instead of DLOG_NO_STOPWATCH $log_server_context instead of $log_server_context 2017-09-29 18:34:30 +00:00
Felipe Zimmerle
112ba45e7a
Makes global mutex for collections optional 2017-05-21 08:53:11 -03:00
Victor Hora
63462668a9 Refactoring on the doxygen generation 2017-05-16 16:27:46 -03:00
Felipe Zimmerle
d6bd0badc5
Cosmetics: fix #1400 indentation and help message 2017-05-08 16:01:37 -03:00
Marc Stern
70322304f2
{dis|en}able-server-context-logging: Option to disable logging of server info (log producer, sanitized objects, ...) in audit log. 2017-05-08 15:36:58 -03:00
Marc Stern
7f647e85ad
Adds missing $log_handler in MODSEC_EXTRA_CFLAGS 2017-05-02 21:45:42 -03:00
Felipe Zimmerle
3e9e4b39cc
Cosmetics changes top of #1402 2017-05-02 17:14:06 -03:00
Marc Stern
7246998f09
Adds option to disable logging of stopwatches in audit log. 2017-05-02 17:11:58 -03:00
Felipe Zimmerle
41ae8db571
Fix configure help added in #1403 2017-05-02 11:11:47 -03:00
Marc Stern
d7383c39dd
Option to disable logging of dechunking 2017-05-02 11:09:42 -03:00
Felipe Zimmerle
2c07a17fa3
Fix help message on configuration option added by #1381 2017-04-26 16:47:48 -03:00
Marc Stern
d1376c5525
Adds option to disable logging of Apache handler in audit log 2017-04-26 16:03:58 -03:00
Felipe Zimmerle
1a5ff4e371
Fix help message on configuration option added by #1380 2017-04-26 15:28:20 -03:00
Marc Stern
d243818aff
{dis|en}able-collection-delete-problem-logging: Option to disable logging of collection delete problem in audit log when log level < 9 in audit log [Issue #576 - Marc Stern] 2017-04-26 15:27:57 -03:00
Marc Stern
9244cd9824
Option to disable logging of "Server" in audit log when log level < 9. [Issue #1070 - Marc Stern] 2017-04-10 12:13:55 -03:00
Marc Stern
c1c91e24cd
{dis|en}able-filename-logging: Option to disable logging of filename in audit log [Issue #1065 - Marc Stern] 2017-04-07 10:55:08 -03:00
Felipe Zimmerle
3fce12a96c
Fix on the patch proposal #1150
That is a fix on the top of #1150 without this fix the patch won't work
as expected.
2016-11-21 10:58:43 -03:00
Marc Stern
7ff0e7e7b2
Added ALLOW_ID_NOT_UNIQUE compile flag to allow duplicate rule ids and no id 2016-11-21 09:58:40 -03:00
Thomas Deutschmann
692712cc95
configure: Move verbose_output declaration up to the beginning
Macros like "find_curl" are using "verbose_output" variable but because some
of them are called before we define the variable we are seeing errors like

  ./configure: line 13855: test: : integer expression expected

This commit will fix the problem by moving the "verbose_output" declaration
up to the beginning so that the variable is available for every macro.
2016-06-14 13:48:01 -03:00
Robert Paprocki
8f8645f3d6 Whitespace fix for pull request 2016-01-29 11:59:52 -03:00
Robert Paprocki
7a39b4b5b9 Make JSON audit logging a configurable option
Remove compile-time setting for generating audit logs
as JSON, creating a new config option (SecAuditLogFormat).
sec_audit_logger is now a wrapper for sec_audit_logger_json
or sec_audit_logger_native. This has the disadvantage of
making the audit log generation code harder to maintain,
but the logger function itself now is no longer pepper
with binary branches.
2016-01-29 11:59:52 -03:00
Robert Paprocki
7b2ca1617e first pass at JSON logging implementation 2016-01-29 11:59:52 -03:00
Kurt Newman
9dbb31b6ce Fix WITH_APU_CRYPTO check on 32-bit Linux platform
All of the apr flags needed to compile APU_HAVE_CRYPTO check
in configure.ac aren't passed.  While this works fine for 64-bit
machines (because _LARGEFILE64_SOURCE is already defined),
this does not work on 32-bit.  This in-turn breaks the apr_off_t
definition in apr.h.

By passing along the apr --cflags and --cppflags to compile,
32-bit machines will allow WITH_APU_CRYPTO to be set if there's
support for it.
2015-10-30 10:04:27 -03:00
Felipe Zimmerle
0d2d01ba2c Disables mlogc compilation with Curl was not found
This commit automatic disables Curl compilation if Curl development files were
not found on build machine.
2014-12-11 14:47:55 -08:00
Felipe Zimmerle
ce4cf24f6e Refactoring external resources download warn messages
Holding the message to be displayed when Apache is ready to write on the
error_log instead of the default output. Regression tests were added.
2014-12-11 12:42:49 -08:00
Felipe Zimmerle
23823bb2c3 Makes Curl no longer a mandatory depedency for ModSecurity core
As reported by Rainer Jung, Curl may not be mandatory to build
	ModSecurity core. This patch make it optional by:
	- Concentrate all downloads using curl on msc_remote_rules.c
	- Split Curl build definitions checks into: WITH_CURL, WITH_REMOTE_RULES
	and WITH_CRYPTO.
	  - WITH_CURL: Contains Culr headers and binaries during the build time.
	  - WITH_REMOTE_RULES: Currently enabled if Curl is present.
	  - WITH_CRYPTO: Set if apr tool was compiled with crypto support.
	- Renames msc_remote_grab_content to msc_remote_download_content
2014-12-03 08:28:59 -08:00
Felipe Zimmerle
23f6f6e6e6 Version 2.9.0-RC1
Increasing version to 2.9.0-RC1.
2014-11-17 19:34:55 -08:00
Felipe Zimmerle
81bde0842d Adds curl support to main core
Curl was used only by mlogc, as we want to expand ModSecurity to load
external rules/resources it is now a dependency of the core as well.
2014-11-14 11:53:40 -08:00
Felipe Zimmerle
11ede79bc5 Adds automake subdir-objects option
As of Automake 1.4, it starts to warning about the lack of utilization
of `subdir-objects' option, which will be default in the further
releases. Avoiding break stuff we are patching ModSecurity to support
such option when it still an option (Issue #760).
2014-11-14 11:53:39 -08:00
Felipe Zimmerle
873c628b1a Adds ssdeep support in our build system
ssdeep will be used with the @fuzzyHash operator which is under
development
2014-11-14 11:53:39 -08:00
Rishi Narang
ed52c5462b typo rectify
Typo - plataform -> platform
2014-07-22 02:52:07 +05:30
Felipe Zimmerle
50e4961dd4 Uses autotools to idenfiy if sys/utsname.h is present
Fix build problem on the msc_status_engine, reported by: Walter Hop and
Derek Werthmuller.
2014-04-14 07:55:21 -07:00
Felipe Zimmerle
33231378d7 Increases the package version on the configure.ac
Changed to 2.8
2014-04-11 05:32:19 -07:00
Felipe Zimmerle
8d4c3e4f5c Makes the build system to look for yajl using a macro file
Now searching for yajl using find_yajl.m4 macro file instead
of using pkg-config directly. If YAJL was not found or if it
was disabled in the configure phase, the code will be compiled
without JSON support.
2014-03-31 16:22:09 -07:00