Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package apache2-mod_security2 for 
openSUSE:Factory checked in at 2021-07-20 15:39:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/apache2-mod_security2 (Old)
 and      /work/SRC/openSUSE:Factory/.apache2-mod_security2.new.2632 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "apache2-mod_security2"

Tue Jul 20 15:39:41 2021 rev:28 rq:907289 version:2.9.4

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/apache2-mod_security2/apache2-mod_security2.changes  
    2021-02-23 20:23:09.347801628 +0100
+++ 
/work/SRC/openSUSE:Factory/.apache2-mod_security2.new.2632/apache2-mod_security2.changes
    2021-07-20 15:40:39.369600303 +0200
@@ -1,0 +2,17 @@
+Mon Jul 19 09:37:45 UTC 2021 - Danilo Spinella <danilo.spine...@suse.com>
+
+- Update to 2.9.4:
+  * Add microsec timestamp resolution to the formatted log timestamp
+  * Added missing Geo Countries
+  * Store temporaries in the request pool for regexes compiled per-request.
+  * Fix other usage of the global pool for request temporaries in 
re_operators.c
+  * Adds a sanity check before use ctl:ruleRemoveTargetById and 
ctl:ruleRemoveTargetByMsg.
+  * Fix the order of error_msg validation
+  * When the input filter finishes, check whether we returned data
+  * fix: care non-null terminated chunk data
+  * Fix for apr_global_mutex_create() crashes with mod_security
+  * Fix inet addr handling on 64 bit big endian systems
+- Run spec-cleaner
+- Remove if/else for older version of SUSE distribution
+
+-------------------------------------------------------------------

Old:
----
  modsecurity-2.9.3.tar.gz

New:
----
  modsecurity-2.9.4.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ apache2-mod_security2.spec ++++++
--- /var/tmp/diff_new_pack.1rssmm/_old  2021-07-20 15:40:40.021601469 +0200
+++ /var/tmp/diff_new_pack.1rssmm/_new  2021-07-20 15:40:40.025601476 +0200
@@ -20,13 +20,13 @@
 %define tarballname   modsecurity-%{version}
 %define usrsharedir %{_datadir}/%{name}
 Name:           apache2-mod_security2
-Version:        2.9.3
+Version:        2.9.4
 Release:        0
 Summary:        Web Application Firewall for apache httpd
 License:        Apache-2.0
 Group:          Productivity/Networking/Web/Servers
-URL:            http://www.modsecurity.org/
-Source:         
https://www.modsecurity.org/tarball/%{version}/%{tarballname}.tar.gz
+URL:            https://www.modsecurity.org/
+Source:         
https://github.com/SpiderLabs/ModSecurity/releases/download/v%{version}/modsecurity-%{version}.tar.gz
 Source1:        
https://github.com/SpiderLabs/owasp-modsecurity-crs/tarball/master//SpiderLabs-owasp-modsecurity-crs-2.2.9-5-gebe8790.tar.gz
 Source2:        mod_security2.conf
 Source6:        README-SUSE-mod_security2.txt
@@ -52,9 +52,6 @@
 Requires:       %{apache_mmn}
 Requires:       %{apache_suse_maintenance_mmn}
 Requires:       apache2
-%if 0%{suse_version} == 1110
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-%endif
 
 %description
 ModSecurity is an intrusion detection and prevention
@@ -73,13 +70,7 @@
 %patch3 -p1
 
 %build
-# aclocal only works with newer distributions
-%if 0%{?suse_version} >= 1310
 aclocal
-# on older versions only autoconf is called
-%else
-autoreconf -fi
-%endif
 automake
 %configure --with-apxs=%{apache_apxs} --enable-request-early 
--enable-htaccess-config --disable-mlogc
 CFLAGS="%{optflags}" make %{?_smp_mflags}
@@ -114,16 +105,14 @@
 #make test-regression
 
 %files
-%if %{suse_version} == 1110
-%defattr (-,root,root)
-%endif
 %{apache_libexecdir}/%{modname}.so
 %config(noreplace) %{apache_sysconfdir}/conf.d/%{modname}.conf
 %dir %{apache_sysconfdir}/mod_security2.d
 %{apache_sysconfdir}/mod_security2.d/README-SUSE-mod_security2.txt
 %{apache_sysconfdir}/mod_security2.d/empty.conf
 %{usrsharedir}
-%doc README.md CHANGES LICENSE NOTICE authors.txt
+%license LICENSE
+%doc README.md CHANGES NOTICE authors.txt
 %doc doc/README.txt
 %doc doc/README-SUSE-mod_security2.txt
 %doc rules/util/regression-tests

++++++ modsecurity-2.9.3.tar.gz -> modsecurity-2.9.4.tar.gz ++++++
++++ 4004 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/CHANGES new/modsecurity-2.9.4/CHANGES
--- old/modsecurity-2.9.3/CHANGES       2018-12-04 19:49:37.000000000 +0100
+++ new/modsecurity-2.9.4/CHANGES       2021-06-21 14:36:18.000000000 +0200
@@ -1,3 +1,28 @@
+21 Jun 2021 - 2.9.4
+-------------------
+
+ * Add microsec timestamp resolution to the formatted log timestamp
+   [Issue #2095 - @rainerjung]
+ * Store temporaries in the request pool for regexes compiled per-request.
+   [Issue #890, #2049 - @lightsey]
+ * Fix other usage of the global pool for request temporaries in re_operators.c
+   [Issue #890, #2049 - @lightsey]
+ * Adds a sanity check before use ctl:ruleRemoveTargetById and 
ctl:ruleRemoveTargetByMsg.
+   [Issue #2033 - @studersi]
+ * Fix the order of error_msg validation
+   [Issue #2128 - @marcstern, @zimmerle]
+ * Added missing Geo Countries
+   [Issue #2123, #2124 - @emphazer]
+ * When the input filter finishes, check whether we returned data
+   [Issue #2091, #2092 - @rainerjung]
+ * fix: care non-null terminated chunk data
+   [Issue #2097 - @orisano]
+ * Fix for apr_global_mutex_create() crashes with mod_security
+   [Issue #1957 - @blappm]
+ * Fix inet addr handling on 64 bit big endian systems
+   [Issue #1980 - @zimmerle, @airween]
+
+
 05 Dec 2018 - 2.9.3
 -------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/README.md new/modsecurity-2.9.4/README.md
--- old/modsecurity-2.9.3/README.md     2018-12-04 19:49:37.000000000 +0100
+++ new/modsecurity-2.9.4/README.md     2021-06-21 14:34:56.000000000 +0200
@@ -14,57 +14,6 @@
 
 Please refer to: [the documentation 
folder](https://github.com/SpiderLabs/ModSecurity/tree/v2/master/doc) for the 
reference manual.
 
-## OWASP ModSecurity Core Rule Set (CRS)
+## Sponsor Note
 
-Project Site: 
https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project
-
-Download: https://github.com/SpiderLabs/owasp-modsecurity-crs
-
-ModSecurity??? is a web application firewall engine that provides very little 
protection on its own. In order to become useful, ModSecurity??? must be 
configured with rules. In order to enable users to take full advantage of 
ModSecurity??? out of the box, Trustwave's SpiderLabs is providing a free 
certified rule set for ModSecurity??? 2.x.
-
-Unlike intrusion detection and prevention systems, which rely on signatures 
specific to known vulnerabilities, the Core Rules provide generic protection 
from unknown vulnerabilities often found in web applications, which are in most 
cases custom coded. The Core Rules are heavily commented to allow it to be used 
as a step-by-step deployment guide for ModSecurity???.
-
-### Core Rules Content
-
-In order to provide generic web applications protection, the Core Rules use 
the following techniques:
-
-* **HTTP Protection** - detecting violations of the HTTP protocol and a 
locally defined usage policy.
-* **Real-time Blacklist Lookups** - utilizes 3rd Party IP Reputation
-* **Web-based Malware Detection** - identifies malicious web content by check 
against the Google Safe Browsing API.
-* **HTTP Denial of Service Protections** - defense against HTTP Flooding and 
Slow HTTP DoS Attacks.
-* **Common Web Attacks Protection** - detecting common web application 
security attack.
-* **Automation Detection** - Detecting bots, crawlers, scanners and other 
surface malicious activity.
-* **Integration with AV Scanning for File Uploads** - detects malicious files 
uploaded through the web application.
-* **Tracking Sensitive Data** - Tracks Credit Card usage and blocks leakages.
-* **Trojan Protection** - Detecting access to Trojans horses.
-* **Identification of Application Defects** - alerts on application 
misconfigurations.
-* **Error Detection and Hiding** - Disguising error messages sent by the 
server.
-
-## ModSecurity Rules from Trustwave SpiderLabs
-
-Project Site: https://www.trustwave.com/modsecurity-rules-support.php
-
-Download: https://ssl.trustwave.com/web-application-firewall
-
-Trustwave now provides a commercial certified rule set for ModSecurity 2.x 
that protects against known attacks that target vulnerabilities in public 
software and are based on intelligence gathered from real-world investigations, 
honeypot data and research.
-
-1. More than 16,000 specific rules, broken out into the following attack 
categories:
-
-   * SQL injection
-   * Cross-site Scripting (XSS)
-   * Local File Include
-   * Remote File Include
-
-2. User option for application specific rules, covering the same vulnerability 
classes for applications such as:
-
-   * WordPress
-   * cPanel
-   * osCommerce
-   * Joomla
-   * For a complete listing of application coverage, please refer to this link 
(which is updated daily): https://modsecurity.org/application_coverage.html
-
-3. Complements and integrates with the OWASP Core Rule Set
-
-4. IP Reputation capabilities which provide protection against malicious 
clients identified by the Trustwave SpiderLabs Distributed Web Honeypots
-
-5. Malware Detection capabilities which prevent your web site from 
distributing malicious code to clients.
+ModSecurity is sponsored by Trustwave. Trustwave offers a range of commercial 
services related to ModSecurity, including a set of Rules, consultancy and 
customization of ModSecurity. Contact the Trustwave sales department for more 
information - sa...@trustwave.com 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/apache2_io.c 
new/modsecurity-2.9.4/apache2/apache2_io.c
--- old/modsecurity-2.9.3/apache2/apache2_io.c  2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/apache2_io.c  2021-06-21 14:34:56.000000000 
+0200
@@ -36,6 +36,7 @@
     msc_data_chunk *chunk = NULL;
     apr_bucket *bucket;
     apr_status_t rc;
+    int no_data = 1;
     char *my_error_msg = NULL;
 
     if (msr == NULL) {
@@ -110,6 +111,7 @@
 
             if (bucket == NULL) return APR_EGENERAL;
             APR_BRIGADE_INSERT_TAIL(bb_out, bucket);
+            no_data = 0;
 
             if (msr->txcfg->debuglog_level >= 4) {
                 msr_log(msr, 4, "Input filter: Forwarded %" APR_SIZE_T_FMT " 
bytes.", chunk->length);
@@ -130,6 +132,7 @@
 
             if (bucket == NULL) return APR_EGENERAL;
             APR_BRIGADE_INSERT_TAIL(bb_out, bucket);
+            no_data = 0;
 
             if (msr->txcfg->debuglog_level >= 4) {
                 msr_log(msr, 4, "Input stream filter: Forwarded %" 
APR_SIZE_T_FMT " bytes.", msr->stream_input_length);
@@ -145,6 +148,7 @@
             bucket = apr_bucket_eos_create(f->r->connection->bucket_alloc);
             if (bucket == NULL) return APR_EGENERAL;
             APR_BRIGADE_INSERT_TAIL(bb_out, bucket);
+            no_data = 0;
 
             if (msr->txcfg->debuglog_level >= 4) {
                 msr_log(msr, 4, "Input filter: Sent EOS.");
@@ -158,6 +162,10 @@
         if (msr->txcfg->debuglog_level >= 4) {
             msr_log(msr, 4, "Input filter: Input forwarding complete.");
         }
+
+        if (no_data) {
+            return ap_get_brigade(f->next, bb_out, mode, block, nbytes);
+        }
     }
 
     return APR_SUCCESS;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/modsecurity.c 
new/modsecurity-2.9.4/apache2/modsecurity.c
--- old/modsecurity-2.9.3/apache2/modsecurity.c 2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/modsecurity.c 2021-06-21 14:34:56.000000000 
+0200
@@ -133,7 +133,8 @@
     curl_global_init(CURL_GLOBAL_ALL);
 #endif
     /* Serial audit log mutext */
-    rc = apr_global_mutex_create(&msce->auditlog_lock, NULL, APR_LOCK_DEFAULT, 
mp);
+    tmpnam(auditlog_lock_name);
+    rc = apr_global_mutex_create(&msce->auditlog_lock, auditlog_lock_name, 
APR_LOCK_DEFAULT, mp);
     if (rc != APR_SUCCESS) {
         //ap_log_error(APLOG_MARK, APLOG_ERR, rv, s, "mod_security: Could not 
create modsec_auditlog_lock");
         //return HTTP_INTERNAL_SERVER_ERROR;
@@ -154,7 +155,8 @@
     }
 #endif /* SET_MUTEX_PERMS */
 
-    rc = apr_global_mutex_create(&msce->geo_lock, NULL, APR_LOCK_DEFAULT, mp);
+    tmpnam(geo_lock_name);
+    rc = apr_global_mutex_create(&msce->geo_lock, geo_lock_name, 
APR_LOCK_DEFAULT, mp);
     if (rc != APR_SUCCESS) {
         return -1;
     }
@@ -171,7 +173,8 @@
 #endif /* SET_MUTEX_PERMS */
 
 #ifdef GLOBAL_COLLECTION_LOCK
-    rc = apr_global_mutex_create(&msce->dbm_lock, NULL, APR_LOCK_DEFAULT, mp);
+    tmpnam(dbm_lock_name);
+    rc = apr_global_mutex_create(&msce->dbm_lock, dbm_lock_name, 
APR_LOCK_DEFAULT, mp);
     if (rc != APR_SUCCESS) {
         return -1;
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/modsecurity.h 
new/modsecurity-2.9.4/apache2/modsecurity.h
--- old/modsecurity-2.9.3/apache2/modsecurity.h 2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/modsecurity.h 2021-06-21 14:34:56.000000000 
+0200
@@ -133,6 +133,12 @@
 
 #define FATAL_ERROR "ModSecurity: Fatal error (memory allocation or unexpected 
internal error)!"
 
+static char auditlog_lock_name[L_tmpnam];
+static char geo_lock_name[L_tmpnam];
+#ifdef GLOBAL_COLLECTION_LOCK
+static char dbm_lock_name[L_tmpnam];
+#endif
+
 extern DSOLOCAL char *new_server_signature;
 extern DSOLOCAL char *real_server_signature;
 extern DSOLOCAL char *chroot_dir;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/msc_geo.c new/modsecurity-2.9.4/apache2/msc_geo.c
--- old/modsecurity-2.9.3/apache2/msc_geo.c     2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/msc_geo.c     2021-06-21 14:34:56.000000000 
+0200
@@ -43,7 +43,8 @@
     "TJ","TK","TM","TN","TO","TL","TR","TT","TV","TW",
     "TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE",
     "VG","VI","VN","VU","WF","WS","YE","YT","RS","ZA",
-    "ZM","ME","ZW","A1","A2","O1","AX","GG","IM","JE"
+    "ZM","ME","ZW","A1","A2","O1","AX","GG","IM","JE",
+    "BL","BQ","CW","MF","SS","SX"
 };
 
 static const char geo_country_code3[GEO_COUNTRY_LAST + 1][4] = {
@@ -72,7 +73,8 @@
     "TJK","TKL","TKM","TUN","TON","TLS","TUR","TTO","TUV","TWN",
     "TZA","UKR","UGA","UM","USA","URY","UZB","VAT","VCT","VEN",
     "VGB","VIR","VNM","VUT","WLF","WSM","YEM","YT","SRB","ZAF",
-    "ZMB","MNE","ZWE","A1","A2","O1","ALA","GGY","IMN","JEY"
+    "ZMB","MNE","ZWE","A1","A2","O1","ALA","GGY","IMN","JEY",
+    "BLM","BES","CUW","MAF","SSD","SXM"
 };
 
 static const char *const geo_country_name[GEO_COUNTRY_LAST + 1] = {
@@ -101,7 +103,8 @@
     
"Tajikistan","Tokelau","Turkmenistan","Tunisia","Tonga","Timor-Leste","Turkey","Trinidad
 and Tobago","Tuvalu","Taiwan",
     "Tanzania, United Republic of","Ukraine","Uganda","United States Minor 
Outlying Islands","United States","Uruguay","Uzbekistan","Holy See (Vatican 
City State)","Saint Vincent and the Grenadines","Venezuela",
     "Virgin Islands, British","Virgin Islands, 
U.S.","Vietnam","Vanuatu","Wallis and 
Futuna","Samoa","Yemen","Mayotte","Serbia","South Africa",
-    "Zambia","Montenegro","Zimbabwe","Anonymous Proxy","Satellite 
Provider","Other","Aland Islands","Guernsey","Isle of Man","Jersey"
+    "Zambia","Montenegro","Zimbabwe","Anonymous Proxy","Satellite 
Provider","Other","Aland Islands","Guernsey","Isle of Man","Jersey",
+    "Saint Barth??lemy","Bonaire, Sint Eustatius and Saba","Cura??ao","Saint 
Martin (French part)","South Sudan","Sint Maarten (Dutch part)"
 };
 
 static const char geo_country_continent[GEO_COUNTRY_LAST + 1][4] = {
@@ -130,7 +133,8 @@
     "AS","OC","AS","AF","OC","AS","AS","SA","OC","AS",
     "AF","EU","AF","OC","NA","SA","AS","EU","SA","SA",
     "SA","SA","AS","OC","OC","OC","AS","AF","EU","AF",
-    "AF","EU","AF","--","--","--","EU","EU","EU","EU"
+    "AF","EU","AF","--","--","--","EU","EU","EU","EU",
+    "--","--","--","--","AF","--"
 };
 
 typedef enum {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/msc_geo.h new/modsecurity-2.9.4/apache2/msc_geo.h
--- old/modsecurity-2.9.3/apache2/msc_geo.h     2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/msc_geo.h     2021-06-21 14:34:56.000000000 
+0200
@@ -25,7 +25,7 @@
 #define GEO_COUNTRY_DATABASE      1
 #define GEO_CITY_DATABASE_0       6
 #define GEO_CITY_DATABASE_1       2
-#define GEO_COUNTRY_LAST          250
+#define GEO_COUNTRY_LAST          256
 #define GEO_SEGMENT_RECORD_LENGTH 3
 #define GEO_STATE_BEGIN_REV0      16700000
 #define GEO_STATE_BEGIN_REV1      16000000
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/msc_logging.c 
new/modsecurity-2.9.4/apache2/msc_logging.c
--- old/modsecurity-2.9.3/apache2/msc_logging.c 2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/msc_logging.c 2021-06-21 14:34:56.000000000 
+0200
@@ -992,6 +992,7 @@
 
                         /* Write the sanitized chunk to the log
                          * and advance to the next chunk. */
+                        chunk->data[chunk->length] = 0;
                         yajl_string(g, chunk->data);
                         chunk_offset += chunk->length;
                     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/msc_release.h 
new/modsecurity-2.9.4/apache2/msc_release.h
--- old/modsecurity-2.9.3/apache2/msc_release.h 2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/msc_release.h 2021-06-21 14:36:18.000000000 
+0200
@@ -38,7 +38,7 @@
 
 #define MODSEC_VERSION_MAJOR       "2"
 #define MODSEC_VERSION_MINOR       "9"
-#define MODSEC_VERSION_MAINT       "3"
+#define MODSEC_VERSION_MAINT       "4"
 #define MODSEC_VERSION_TYPE        ""
 #define MODSEC_VERSION_RELEASE     ""
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/msc_tree.c 
new/modsecurity-2.9.4/apache2/msc_tree.c
--- old/modsecurity-2.9.3/apache2/msc_tree.c    2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/msc_tree.c    2021-06-21 14:34:56.000000000 
+0200
@@ -832,7 +832,7 @@
     switch(type)    {
 
         case IPV4_TREE:
-            memset(&addr4, 0, sizeof(addr4));
+            memset(&(addr4.s_addr), 0, sizeof(addr4.s_addr));
             memset(ip_strv4, 0x0, NETMASK_32);
 
             strncpy(ip_strv4, buffer, sizeof(ip_strv4));
@@ -859,20 +859,16 @@
                 ip_strv4[pos] = '\0';
             }
 
-            ret = inet_pton(AF_INET, ip_strv4, &addr4);
+            ret = inet_pton(AF_INET, ip_strv4, &(addr4.s_addr));
 
             if (ret <= 0) {
                 return NULL;
             }
-
-            ip = addr4.s_addr;
-
             tree->count++;
-
-            return CPTAddElement((unsigned char *)&ip, NETMASK_32, tree, 
netmask_v4);
+            return CPTAddElement((unsigned char *)&(addr4.s_addr), NETMASK_32, 
tree, netmask_v4);
 
         case IPV6_TREE:
-            memset(&addr6, 0, sizeof(addr6));
+            memset(&(addr6.s6_addr), 0, sizeof(addr6.s6_addr));
             memset(ip_strv6, 0x0, NETMASK_128);
 
             strncpy(ip_strv6, buffer, sizeof(ip_strv6));
@@ -899,7 +895,7 @@
                 ip_strv6[pos] = '\0';
             }
 
-            ret = inet_pton(AF_INET6, ip_strv6, &addr6);
+            ret = inet_pton(AF_INET6, ip_strv6, &(addr6.s6_addr));
 
             if (ret <= 0)
             {
@@ -908,10 +904,11 @@
 
             tree->count++;
 
-            return CPTAddElement((unsigned char *)&addr6.s6_addr, NETMASK_128, 
tree, netmask_v6);
+            return CPTAddElement((unsigned char *)&(addr6.s6_addr), 
NETMASK_128, tree, netmask_v6);
         default:
             return NULL;
     }
 
     return NULL;
 }
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/msc_util.c 
new/modsecurity-2.9.4/apache2/msc_util.c
--- old/modsecurity-2.9.3/apache2/msc_util.c    2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/msc_util.c    2021-06-21 14:34:56.000000000 
+0200
@@ -1129,10 +1129,12 @@
     char tstr[100];
     apr_size_t len;
 
-    apr_time_exp_lt(&t, apr_time_now());
+    apr_time_t now = apr_time_now();
+    apr_time_exp_lt(&t, now);
 
-    apr_strftime(tstr, &len, 80, "%d/%b/%Y:%H:%M:%S ", &t);
-    apr_snprintf(tstr + strlen(tstr), 80 - strlen(tstr), "%c%.2d%.2d",
+    apr_strftime(tstr, &len, 80, "%d/%b/%Y:%H:%M:%S.", &t);
+    apr_snprintf(tstr + strlen(tstr), 80 - strlen(tstr), "%06ld %c%.2d%.2d",
+            ((long)now) % 1000000L,
             t.tm_gmtoff < 0 ? '-' : '+',
             t.tm_gmtoff / (60 * 60), (t.tm_gmtoff / 60) % 60);
     return apr_pstrdup(mp, tstr);
@@ -2712,26 +2714,26 @@
     }
 
     if (strchr(value, ':') == NULL) {
-        if (inet_pton(AF_INET, value, &in) <= 0) {
+        if (inet_pton(AF_INET, value, &(in.s_addr)) <= 0) {
             *error_msg = apr_psprintf(mp, "IPmatch: bad IPv4 " \
                 "specification \"%s\".", value);
             return -1;
         }
 
-        if (CPTIpMatch(msr, (unsigned char *)&in.s_addr, rtree->ipv4_tree,
+        if (CPTIpMatch(msr, (unsigned char *)&(in.s_addr), rtree->ipv4_tree,
             IPV4_TREE) != NULL) {
             return 1;
         }
     }
 #if APR_HAVE_IPV6
     else {
-        if (inet_pton(AF_INET6, value, &in6) <= 0) {
+        if (inet_pton(AF_INET6, value, &(in6.s6_addr)) <= 0) {
             *error_msg = apr_psprintf(mp, "IPmatch: bad IPv6 " \
                 "specification \"%s\".", value);
             return -1;
         }
 
-        if (CPTIpMatch(msr, (unsigned char *)&in6.s6_addr, rtree->ipv6_tree,
+        if (CPTIpMatch(msr, (unsigned char *)&(in6.s6_addr), rtree->ipv6_tree,
             IPV6_TREE) != NULL) {
             return 1;
         }
@@ -2780,8 +2782,8 @@
 }
 
 #ifdef WITH_CURL
-size_t msc_curl_write_memory_cb(apr_pool_t *mp, void *contents, size_t size,
-        size_t nmemb, void *userp, char **error_msg)
+size_t msc_curl_write_memory_cb(void *contents, size_t size,
+        size_t nmemb, void *userp)
 {
     size_t realsize = size * nmemb;
     struct msc_curl_memory_buffer_t *mem = (struct msc_curl_memory_buffer_t 
*)userp;
@@ -2790,19 +2792,13 @@
     {
         mem->memory = malloc(realsize + 1);
         if (mem->memory == NULL) {
-            *error_msg = apr_psprintf(mp, "Unable to allocate buffer for 
mem->memory");
             return 0;
         }
         memset(mem->memory, '\0', sizeof(realsize + 1));
     }
     else
     {
-        void *tmp;
-        tmp = mem->memory;
-        tmp = realloc(mem->memory, mem->size + realsize + 1);
-        if (tmp != NULL) {
-            mem->memory = tmp;
-        }
+        mem->memory = realloc(mem->memory, mem->size + realsize + 1);
         memset(mem->memory + mem->size, '\0', sizeof(realsize + 1));
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/msc_util.h 
new/modsecurity-2.9.4/apache2/msc_util.h
--- old/modsecurity-2.9.3/apache2/msc_util.h    2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/msc_util.h    2021-06-21 14:34:56.000000000 
+0200
@@ -166,8 +166,8 @@
 
 int read_line(char *buff, int size, FILE *fp);
 
-size_t msc_curl_write_memory_cb(apr_pool_t *mp, void *contents, size_t size,
-    size_t nmemb, void *userp, char **error_msg);
+size_t msc_curl_write_memory_cb(void *contents, size_t size,
+    size_t nmemb, void *userp);
 
 struct msc_curl_memory_buffer_t
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/re_actions.c 
new/modsecurity-2.9.4/apache2/re_actions.c
--- old/modsecurity-2.9.3/apache2/re_actions.c  2018-12-04 19:49:37.000000000 
+0100
+++ new/modsecurity-2.9.4/apache2/re_actions.c  2021-06-21 14:34:56.000000000 
+0200
@@ -1235,6 +1235,11 @@
         if (msr->txcfg->debuglog_level >= 4) {
             msr_log(msr, 4, "Ctl: ruleRemoveTargetById id=%s targets=%s", p1, 
p2);
         }
+        if (p2 == NULL) {
+            msr_log(msr, 1, "ModSecurity: Missing target for id \"%s\"", p1);
+            return -1;
+        }
+
     re = apr_pcalloc(msr->mp, sizeof(rule_exception));
     re->type = RULE_EXCEPTION_REMOVE_ID;
     re->param = (const char *)apr_pstrdup(msr->mp, p1);
@@ -1253,10 +1258,10 @@
         if (msr->txcfg->debuglog_level >= 4) {
             msr_log(msr, 4, "Ctl: ruleRemoveTargetByTag tag=%s targets=%s", 
p1, p2);
         }
-       if (p2 == NULL) {
+        if (p2 == NULL) {
             msr_log(msr, 1, "ModSecurity: Missing target for tag \"%s\"", p1);
-           return -1;
-       }
+            return -1;
+        }
 
     re = apr_pcalloc(msr->mp, sizeof(rule_exception));
     re->type = RULE_EXCEPTION_REMOVE_TAG;
@@ -1281,6 +1286,10 @@
         if (msr->txcfg->debuglog_level >= 4) {
             msr_log(msr, 4, "Ctl: ruleRemoveTargetByMsg msg=%s targets=%s", 
p1, p2);
         }
+        if (p2 == NULL) {
+            msr_log(msr, 1, "ModSecurity: Missing target for msg \"%s\"", p1);
+            return -1;
+        }
 
     re = apr_pcalloc(msr->mp, sizeof(rule_exception));
     re->type = RULE_EXCEPTION_REMOVE_MSG;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/apache2/re_operators.c 
new/modsecurity-2.9.4/apache2/re_operators.c
--- old/modsecurity-2.9.3/apache2/re_operators.c        2018-12-04 
19:49:38.000000000 +0100
+++ new/modsecurity-2.9.4/apache2/re_operators.c        2021-06-21 
14:34:56.000000000 +0200
@@ -784,10 +784,10 @@
                 msr_log(msr, 6, "Escaping pattern [%s]",pattern);
             }
 
-            regex = msc_pregcomp_ex(rule->ruleset->mp, pattern, PCRE_DOTALL | 
PCRE_DOLLAR_ENDONLY, &errptr, 
+            regex = msc_pregcomp_ex(msr->mp, pattern, PCRE_DOTALL | 
PCRE_DOLLAR_ENDONLY, &errptr,
                     &erroffset, msc_pcre_match_limit, 
msc_pcre_match_limit_recursion);
             if (regex == NULL) {
-                *error_msg = apr_psprintf(rule->ruleset->mp, "Error compiling 
pattern (offset %d): %s",
+                *error_msg = apr_psprintf(msr->mp, "Error compiling pattern 
(offset %d): %s",
                         erroffset, errptr);
                 return 0;
             }
@@ -797,7 +797,7 @@
             if (msr->txcfg->debuglog_level >= 4) {
                 rc = msc_fullinfo(regex, PCRE_INFO_JIT, &jit);
                 if ((rc != 0) || (jit != 1)) {
-                    *error_msg = apr_psprintf(rule->ruleset->mp,
+                    *error_msg = apr_psprintf(msr->mp,
                             "Rule %pp [id \"%s\"][file \"%s\"][line \"%d\"] - "
                             "Execution error - "
                             "Does not support JIT (%d)",
@@ -1018,9 +1018,9 @@
                 msr_log(msr, 6, "Escaping pattern [%s]",pattern);
             }
 
-            regex = msc_pregcomp_ex(rule->ruleset->mp, pattern, PCRE_DOTALL | 
PCRE_DOLLAR_ENDONLY, &errptr, &erroffset, msc_pcre_match_limit, 
msc_pcre_match_limit_recursion);
+            regex = msc_pregcomp_ex(msr->mp, pattern, PCRE_DOTALL | 
PCRE_DOLLAR_ENDONLY, &errptr, &erroffset, msc_pcre_match_limit, 
msc_pcre_match_limit_recursion);
             if (regex == NULL) {
-                *error_msg = apr_psprintf(rule->ruleset->mp, "Error compiling 
pattern (offset %d): %s",
+                *error_msg = apr_psprintf(msr->mp, "Error compiling pattern 
(offset %d): %s",
                         erroffset, errptr);
                 return 0;
             }
@@ -1030,7 +1030,7 @@
             if (msr->txcfg->debuglog_level >= 4) {
                 rc = msc_fullinfo(regex, PCRE_INFO_JIT, &jit);
                 if ((rc != 0) || (jit != 1)) {
-                    *error_msg = apr_psprintf(rule->ruleset->mp,
+                    *error_msg = apr_psprintf(msr->mp,
                             "Rule %pp [id \"%s\"][file \"%s\"][line \"%d\"] - "
                             "Execution error - "
                             "Does not support JIT (%d)",
@@ -1684,7 +1684,7 @@
         return 0;
     }
 
-    data = apr_pcalloc(rule->ruleset->mp, var->value_len+1);
+    data = apr_pcalloc(msr->mp, var->value_len+1);
 
     if(data == NULL)    {
         *error_msg = "Internal Error: cannot allocate memory for data.";
@@ -1699,18 +1699,18 @@
     {
         for(i = 0; i < rv; ++i)
         {
-            match = apr_psprintf(rule->ruleset->mp, "%.*s", ovector[2*i+1] - 
ovector[2*i], data + ovector[2*i]);
+            match = apr_psprintf(msr->mp, "%.*s", ovector[2*i+1] - 
ovector[2*i], data + ovector[2*i]);
 
             if (match == NULL)  {
                 *error_msg = "Internal Error: cannot allocate memory for 
match.";
                 return -1;
             }
 
-            match = remove_escape(rule->ruleset->mp, match, strlen(match));
+            match = remove_escape(msr->mp, match, strlen(match));
 
-            match = gsb_replace_tpath(rule->ruleset->mp, match, strlen(match));
+            match = gsb_replace_tpath(msr->mp, match, strlen(match));
 
-            match = gsb_reduce_char(rule->ruleset->mp, match);
+            match = gsb_reduce_char(msr->mp, match);
 
             match_length = strlen(match);
 
@@ -1732,7 +1732,7 @@
                                 log_escape_nq(msr->mp, match));
                     }
 
-                    str = apr_pstrdup(rule->ruleset->mp,match);
+                    str = apr_pstrdup(msr->mp,match);
 
                     base = apr_strtok(str,"/",&savedptr);
                     if(base != NULL)
@@ -1744,7 +1744,7 @@
                 /* append / in the end of full url */
                 if ((match[match_length -1] != '/') && (strchr(match,'?') == 
NULL))    {
 
-                    canon = apr_psprintf(rule->ruleset->mp, "%s/", match);
+                    canon = apr_psprintf(msr->mp, "%s/", match);
                     if (canon != NULL)  {
 
                         canon_length = strlen(canon);
@@ -1757,7 +1757,7 @@
                                         log_escape_nq(msr->mp, canon));
                             }
 
-                            str = apr_pstrdup(rule->ruleset->mp,match);
+                            str = apr_pstrdup(msr->mp,match);
 
                             base = apr_strtok(str,"/",&savedptr);
                             if(base != NULL)
@@ -1770,7 +1770,7 @@
 
                 /* Parsing full url */
 
-                domain = apr_pstrdup(rule->ruleset->mp, match);
+                domain = apr_pstrdup(msr->mp, match);
 
                 domain_len = strlen(domain);
 
@@ -1785,7 +1785,7 @@
 
                     dot = strchr(domain,'.');
                     if(dot != NULL) {
-                        canon = apr_pstrdup(rule->ruleset->mp, domain);
+                        canon = apr_pstrdup(msr->mp, domain);
 
                         ret = verify_gsb(gsb, msr, canon, strlen(canon));
 
@@ -1796,7 +1796,7 @@
                                         log_escape_nq(msr->mp, canon));
                             }
 
-                            str = apr_pstrdup(rule->ruleset->mp,match);
+                            str = apr_pstrdup(msr->mp,match);
 
                             base = apr_strtok(str,"/",&savedptr);
                             if(base != NULL)
@@ -1818,7 +1818,7 @@
                                             log_escape_nq(msr->mp, base));
                                 }
 
-                                str = apr_pstrdup(rule->ruleset->mp,match);
+                                str = apr_pstrdup(msr->mp,match);
 
                                 base = apr_strtok(str,"/",&savedptr);
                                 if(base != NULL)
@@ -1829,13 +1829,13 @@
 
                         }
 
-                        url = apr_palloc(rule->ruleset->mp, strlen(canon));
+                        url = apr_palloc(msr->mp, strlen(canon));
                         count_slash = 0;
 
                         while(*canon != '\0') {
                             switch (*canon)   {
                                 case '/':
-                                    ptr = 
apr_psprintf(rule->ruleset->mp,"%s/",url);
+                                    ptr = apr_psprintf(msr->mp,"%s/",url);
                                     ret = verify_gsb(gsb, msr, ptr, 
strlen(ptr));
                                     if(ret > 0) {
                                         set_match_to_tx(msr, capture, ptr, 0);
@@ -1844,7 +1844,7 @@
                                                     log_escape_nq(msr->mp, 
ptr));
                                         }
 
-                                        str = 
apr_pstrdup(rule->ruleset->mp,match);
+                                        str = apr_pstrdup(msr->mp,match);
 
                                         base = apr_strtok(str,"/",&savedptr);
                                         if(base != NULL)
@@ -1871,7 +1871,7 @@
                 }
 
 
-                str = apr_pstrdup(rule->ruleset->mp, match);
+                str = apr_pstrdup(msr->mp, match);
 
                 while (*str != '\0')   {
 
@@ -1896,7 +1896,7 @@
 
                                 dot = strchr(domain,'.');
                                 if(dot != NULL) {
-                                    canon = apr_pstrdup(rule->ruleset->mp, 
domain);
+                                    canon = apr_pstrdup(msr->mp, domain);
 
                                     ret = verify_gsb(gsb, msr, canon, 
strlen(canon));
 
@@ -1906,7 +1906,7 @@
                                             *error_msg = apr_psprintf(msr->mp, 
"Gsb lookup for \"%s\" succeeded.",
                                                     log_escape_nq(msr->mp, 
canon));
                                         }
-                                        str = 
apr_pstrdup(rule->ruleset->mp,match);
+                                        str = apr_pstrdup(msr->mp,match);
 
                                         base = apr_strtok(str,"/",&savedptr);
                                         if(base != NULL)
@@ -1926,7 +1926,7 @@
                                                 *error_msg = 
apr_psprintf(msr->mp, "Gsb lookup for \"%s\" succeeded.",
                                                         log_escape_nq(msr->mp, 
base));
                                             }
-                                            str = 
apr_pstrdup(rule->ruleset->mp,match);
+                                            str = apr_pstrdup(msr->mp,match);
 
                                             base = 
apr_strtok(str,"/",&savedptr);
                                             if(base != NULL)
@@ -1936,13 +1936,13 @@
 
                                     }
 
-                                    url = apr_palloc(rule->ruleset->mp, 
strlen(canon));
+                                    url = apr_palloc(msr->mp, strlen(canon));
                                     count_slash = 0;
 
                                     while(*canon != '\0') {
                                         switch (*canon)   {
                                             case '/':
-                                                ptr = 
apr_psprintf(rule->ruleset->mp,"%s/",url);
+                                                ptr = 
apr_psprintf(msr->mp,"%s/",url);
                                                 ret = verify_gsb(gsb, msr, 
ptr, strlen(ptr));
                                                 if(ret > 0) {
                                                     set_match_to_tx(msr, 
capture, ptr, 0);
@@ -1950,7 +1950,7 @@
                                                         *error_msg = 
apr_psprintf(msr->mp, "Gsb lookup for \"%s\" succeeded.",
                                                                 
log_escape_nq(msr->mp, ptr));
                                                     }
-                                                    str = 
apr_pstrdup(rule->ruleset->mp,match);
+                                                    str = 
apr_pstrdup(msr->mp,match);
 
                                                     base = 
apr_strtok(str,"/",&savedptr);
                                                     if(base != NULL)
@@ -1993,6 +1993,9 @@
     unsigned int target_length = 0;
     unsigned int i, i_max;
 
+    if (error_msg == NULL) return -1;
+    *error_msg = NULL;
+
     str->value = (char *)rule->op_param;
 
     if (str->value == NULL) {
@@ -2002,9 +2005,6 @@
 
     str->value_len = strlen(str->value);
 
-    if (error_msg == NULL) return -1;
-    *error_msg = NULL;
-
     expand_macros(msr, str, rule, msr->mp);
 
     match = (const char *)str->value;
@@ -2781,7 +2781,7 @@
     if (msr->txcfg->debuglog_level >= 4) {
         rc = msc_fullinfo(regex, PCRE_INFO_JIT, &jit);
         if ((rc != 0) || (jit != 1)) {
-            *error_msg = apr_psprintf(rule->ruleset->mp,
+            *error_msg = apr_psprintf(msr->mp,
                     "Rule %pp [id \"%s\"][file \"%s\"][line \"%d\"] - "
                     "Execution error - "
                     "Does not support JIT (%d)",
@@ -3092,7 +3092,7 @@
     if (msr->txcfg->debuglog_level >= 4) {
         rc = msc_fullinfo(regex, PCRE_INFO_JIT, &jit);
         if ((rc != 0) || (jit != 1)) {
-            *error_msg = apr_psprintf(rule->ruleset->mp,
+            *error_msg = apr_psprintf(msr->mp,
                     "Rule %pp [id \"%s\"][file \"%s\"][line \"%d\"] - "
                     "Execution error - "
                     "Does not support JIT (%d)",
@@ -3386,7 +3386,7 @@
     if (msr->txcfg->debuglog_level >= 4) {
         rc = msc_fullinfo(regex, PCRE_INFO_JIT, &jit);
         if ((rc != 0) || (jit != 1)) {
-            *error_msg = apr_psprintf(rule->ruleset->mp,
+            *error_msg = apr_psprintf(msr->mp,
                     "Rule %pp [id \"%s\"][file \"%s\"][line \"%d\"] - "
                     "Execution error - "
                     "Does not support JIT (%d)",
@@ -3967,7 +3967,7 @@
 #ifdef WITH_SSDEEP
     if (fuzzy_hash_buf(var->value, var->value_len, result))
     {
-        *error_msg = apr_psprintf(rule->ruleset->mp, "Problems generating " \
+        *error_msg = apr_psprintf(msr->mp, "Problems generating " \
             "fuzzy hash.");
 
         return -1;
@@ -3987,7 +3987,7 @@
         chunk = chunk->next;
     }
 #else
-    *error_msg = apr_psprintf(rule->ruleset->mp, "ModSecurity was not " \
+    *error_msg = apr_psprintf(msr->mp, "ModSecurity was not " \
         "compiled with ssdeep support.");
 
     return -1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/build/ar-lib new/modsecurity-2.9.4/build/ar-lib
--- old/modsecurity-2.9.3/build/ar-lib  2018-12-04 19:49:51.000000000 +0100
+++ new/modsecurity-2.9.4/build/ar-lib  2021-06-21 18:53:19.000000000 +0200
@@ -4,7 +4,7 @@
 me=ar-lib
 scriptversion=2012-03-01.08; # UTC
 
-# Copyright (C) 2010-2017 Free Software Foundation, Inc.
+# Copyright (C) 2010-2018 Free Software Foundation, Inc.
 # Written by Peter Rosin <p...@lysator.liu.se>.
 #
 # This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,7 @@
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/build/compile new/modsecurity-2.9.4/build/compile
--- old/modsecurity-2.9.3/build/compile 2018-12-04 19:49:51.000000000 +0100
+++ new/modsecurity-2.9.4/build/compile 2021-06-21 18:53:19.000000000 +0200
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Wrapper for compilers which do not understand '-c -o'.
 
-scriptversion=2012-10-14.11; # UTC
+scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 # Written by Tom Tromey <tro...@cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -255,7 +255,8 @@
     echo "compile $scriptversion"
     exit $?
     ;;
-  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
+  icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
     func_cl_wrapper "$@"      # Doesn't return...
     ;;
 esac
@@ -339,9 +340,9 @@
 # Local Variables:
 # mode: shell-script
 # sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
 # time-stamp-end: "; # UTC"
 # End:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/build/libtool.m4 new/modsecurity-2.9.4/build/libtool.m4
--- old/modsecurity-2.9.3/build/libtool.m4      2018-12-04 19:49:38.000000000 
+0100
+++ new/modsecurity-2.9.4/build/libtool.m4      2021-06-21 18:53:14.000000000 
+0200
@@ -1041,8 +1041,8 @@
 _LT_EOF
       echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
       $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
-      echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
-      $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
+      echo "$AR cr libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
+      $AR cr libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
       echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
       $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
       cat > conftest.c << _LT_EOF
@@ -1492,7 +1492,7 @@
 m4_defun([_LT_PROG_AR],
 [AC_CHECK_TOOLS(AR, [ar], false)
 : ${AR=ar}
-: ${AR_FLAGS=cru}
+: ${AR_FLAGS=cr}
 _LT_DECL([], [AR], [1], [The archiver])
 _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
 
@@ -4063,7 +4063,8 @@
   if AC_TRY_EVAL(ac_compile); then
     # Now try to grab the symbols.
     nlist=conftest.nm
-    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" 
\> $nlist) && test -s "$nlist"; then
+    $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | 
$lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
+    if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> 
$nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
       # Try sorting and uniquifying the output.
       if sort "$nlist" | uniq > "$nlist"T; then
        mv -f "$nlist"T "$nlist"
@@ -4703,6 +4704,12 @@
        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
         ;;
+      # flang / f18. f95 an alias for gfortran or flang on Debian
+      flang* | f18* | f95*)
+       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+       _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+        ;;
       # icc used to be incompatible with GCC.
       # ICC 10 doesn't accept -KPIC any more.
       icc* | ifort*)
@@ -6438,7 +6445,7 @@
       # Commands to make compiler produce verbose output that lists
       # what "hidden" libraries, object files and flags are used when
       # linking a shared library.
-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | 
$GREP -v "^Configured with:" | $GREP "\-L"'
+      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | 
$GREP -v "^Configured with:" | $GREP " \-L"'
 
     else
       GXX=no
@@ -6813,7 +6820,7 @@
             # explicitly linking system object files so we need to strip them
             # from the output so that they don't get included in the library
             # dependencies.
-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v 
conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z 
in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; 
done; func_echo_all "$list"'
+            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v 
conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z 
in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; 
done; func_echo_all "$list"'
             ;;
           *)
             if test yes = "$GXX"; then
@@ -6878,7 +6885,7 @@
            # explicitly linking system object files so we need to strip them
            # from the output so that they don't get included in the library
            # dependencies.
-           output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v 
conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z 
in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; 
done; func_echo_all "$list"'
+           output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v 
conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z 
in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; 
done; func_echo_all "$list"'
            ;;
           *)
            if test yes = "$GXX"; then
@@ -7217,7 +7224,7 @@
              # Commands to make compiler produce verbose output that lists
              # what "hidden" libraries, object files and flags are used when
              # linking a shared library.
-             output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 
2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+             output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 
2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 
            else
              # FIXME: insert proper C++ library support
@@ -7301,7 +7308,7 @@
                # Commands to make compiler produce verbose output that lists
                # what "hidden" libraries, object files and flags are used when
                # linking a shared library.
-               output_verbose_link_cmd='$CC -shared $CFLAGS -v 
conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+               output_verbose_link_cmd='$CC -shared $CFLAGS -v 
conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
              else
                # g++ 2.7 appears to require '-G' NOT '-shared' on this
                # platform.
@@ -7312,7 +7319,7 @@
                # Commands to make compiler produce verbose output that lists
                # what "hidden" libraries, object files and flags are used when
                # linking a shared library.
-               output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 
2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+               output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 
2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
              fi
 
              _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/build/missing new/modsecurity-2.9.4/build/missing
--- old/modsecurity-2.9.3/build/missing 2018-12-04 19:49:51.000000000 +0100
+++ new/modsecurity-2.9.4/build/missing 2021-06-21 18:53:19.000000000 +0200
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2013-10-28.13; # UTC
+scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -101,9 +101,9 @@
   exit $st
 fi
 
-perl_URL=http://www.perl.org/
-flex_URL=http://flex.sourceforge.net/
-gnu_software_URL=http://www.gnu.org/software
+perl_URL=https://www.perl.org/
+flex_URL=https://github.com/westes/flex
+gnu_software_URL=https://www.gnu.org/software
 
 program_details ()
 {
@@ -207,9 +207,9 @@
 exit $st
 
 # Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
 # time-stamp-end: "; # UTC"
 # End:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/build/test-driver new/modsecurity-2.9.4/build/test-driver
--- old/modsecurity-2.9.3/build/test-driver     2018-12-04 19:49:52.000000000 
+0100
+++ new/modsecurity-2.9.4/build/test-driver     2021-06-21 18:53:19.000000000 
+0200
@@ -1,9 +1,9 @@
 #! /bin/sh
 # test-driver - basic testsuite driver script.
 
-scriptversion=2013-07-13.22; # UTC
+scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 2011-2014 Free Software Foundation, Inc.
+# Copyright (C) 2011-2018 Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -140,9 +140,9 @@
 # Local Variables:
 # mode: shell-script
 # sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
 # time-stamp-end: "; # UTC"
 # End:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/iis/build_dependencies.bat 
new/modsecurity-2.9.4/iis/build_dependencies.bat
--- old/modsecurity-2.9.3/iis/build_dependencies.bat    2018-12-04 
19:49:38.000000000 +0100
+++ new/modsecurity-2.9.4/iis/build_dependencies.bat    2021-06-21 
14:35:20.000000000 +0200
@@ -10,15 +10,15 @@
 @set CMAKE=cmake-3.12.4-win32-x86.zip
 @set PCRE=pcre-8.41.zip
 @set ZLIB=zlib-1.2.11.tar.gz
-@set LIBXML2=libxml2-2.9.8.tar.gz
-@set LUA=lua-5.3.5.tar.gz
-@set CURL=curl-7.62.0.zip
-@set APACHE_SRC=httpd-2.4.37.tar.gz
-@set APACHE_BIN32=httpd-2.4.37-win32-VC11.zip
-@set APACHE_BIN64=httpd-2.4.37-win64-VC11.zip
+@set LIBXML2=libxml2-2.9.11.tar.gz
+@set LUA=lua-5.3.6.tar.gz
+@set CURL=curl-7.77.0.zip
+@set APACHE_SRC=httpd-2.4.48.tar.gz
+@set APACHE_BIN32=httpd-2.4.48-win32-VS16.zip
+@set APACHE_BIN64=httpd-2.4.48-win64-VS16.zip
 @set YAJL=yajl-2.1.0.zip
-@set SSDEEP=ssdeep-2.13.tar.gz
-@set SSDEEP_BIN=ssdeep-2.13.zip
+@set SSDEEP=ssdeep-2.14.1.tar.gz
+@set SSDEEP_BIN=ssdeep-2.14.1.zip
 
 @set CMAKE_DIR=%WORK_DIR%\%CMAKE:~0,-4%\bin
 
@@ -64,7 +64,7 @@
 @echo # pcre. - %PCRE%
 @call dependencies/build_pcre.bat
 @if NOT (%ERRORLEVEL%) == (0) goto build_failed_pcre
-@cd "%CURRENT_DIR%"
+@cd "%CURRENT_DIR%
 
 @echo # zlib - %ZLIB%
 @call dependencies/build_zlib.bat
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/iis/build_msi.bat new/modsecurity-2.9.4/iis/build_msi.bat
--- old/modsecurity-2.9.3/iis/build_msi.bat     2018-12-04 19:49:38.000000000 
+0100
+++ new/modsecurity-2.9.4/iis/build_msi.bat     2021-06-21 14:35:20.000000000 
+0200
@@ -5,16 +5,16 @@
 
 del installer.wix*
 
-"candle.exe" -ext WixUtilExtension -ext WixUIExtension 
"%CURRENT_DIR%\installer.wxs" -out "%CURRENT_DIR%\installer.wixobj" -arch x64
+"C:\Program Files (x86)\WiX Toolset v3.11\bin\candle.exe" -ext 
WixUtilExtension -ext WixUIExtension "%CURRENT_DIR%\installer.wxs" -out 
"%CURRENT_DIR%\installer.wixobj" -arch x64
 @if NOT (%ERRORLEVEL%) == (0) goto build_failed
 
-"light.exe" -ext WixUtilExtension -ext WixUIExtension 
"%CURRENT_DIR%\installer.wixobj" -out "%CURRENT_DIR%\installer-64.msi" 
+"C:\Program Files (x86)\WiX Toolset v3.11\bin\light.exe" -ext WixUtilExtension 
-ext WixUIExtension "%CURRENT_DIR%\installer.wixobj" -out 
"%CURRENT_DIR%\installer-64.msi" 
 @if NOT (%ERRORLEVEL%) == (0) goto build_failed
 
-"candle.exe" -ext WixUtilExtension -ext WixUIExtension 
"%CURRENT_DIR%\installer.wxs" -out "%CURRENT_DIR%\installer.wixobj" -arch x86
+"C:\Program Files (x86)\WiX Toolset v3.11\bin\candle.exe" -ext 
WixUtilExtension -ext WixUIExtension "%CURRENT_DIR%\installer.wxs" -out 
"%CURRENT_DIR%\installer.wixobj" -arch x86
 @if NOT (%ERRORLEVEL%) == (0) goto build_failed
 
-"light.exe" -ext WixUtilExtension -ext WixUIExtension 
"%CURRENT_DIR%\installer.wixobj" -out "%CURRENT_DIR%\installer-32.msi" 
+"C:\Program Files (x86)\WiX Toolset v3.11\bin\light.exe" -ext WixUtilExtension 
-ext WixUIExtension "%CURRENT_DIR%\installer.wixobj" -out 
"%CURRENT_DIR%\installer-32.msi" 
 @if NOT (%ERRORLEVEL%) == (0) goto build_failed
 
 exit /B 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/iis/dependencies/build_curl.bat 
new/modsecurity-2.9.4/iis/dependencies/build_curl.bat
--- old/modsecurity-2.9.3/iis/dependencies/build_curl.bat       2018-12-04 
19:49:38.000000000 +0100
+++ new/modsecurity-2.9.4/iis/dependencies/build_curl.bat       2021-06-21 
14:35:20.000000000 +0200
@@ -20,9 +20,10 @@
 
 cd "%WORK_DIR%"
 
-copy /y 
"%WORK_DIR%\curl\builds\libcurl-vc-%ARCH%-release-dll-zlib-dll-ipv6-sspi-winssl-obj-lib\libcurl.dll"
 "%OUTPUT_DIR%"
-copy /y 
"%WORK_DIR%\curl\builds\libcurl-vc-%ARCH%-release-dll-zlib-dll-ipv6-sspi-winssl-obj-lib\libcurl.lib"
 "%OUTPUT_DIR%"
-copy /y 
"%WORK_DIR%\curl\builds\libcurl-vc-%ARCH%-release-dll-zlib-dll-ipv6-sspi-winssl-obj-lib\libcurl.lib"
 "%WORK_DIR%\curl\libcurl.lib"
+copy /y 
"%WORK_DIR%\curl\builds\libcurl-vc-%ARCH%-release-dll-zlib-dll-ipv6-sspi-schannel-obj-lib\libcurl.dll"
 "%OUTPUT_DIR%"
+copy /y 
"%WORK_DIR%\curl\builds\libcurl-vc-%ARCH%-release-dll-zlib-dll-ipv6-sspi-schannel-obj-lib\libcurl.lib"
 "%OUTPUT_DIR%"
+copy /y 
"%WORK_DIR%\curl\builds\libcurl-vc-%ARCH%-release-dll-zlib-dll-ipv6-sspi-schannel-obj-lib\libcurl.lib"
 "%WORK_DIR%\curl\libcurl.lib"
+
 
 exit /B 0
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/iis/installer.wxs new/modsecurity-2.9.4/iis/installer.wxs
--- old/modsecurity-2.9.3/iis/installer.wxs     2018-12-04 19:49:38.000000000 
+0100
+++ new/modsecurity-2.9.4/iis/installer.wxs     2021-06-21 14:35:50.000000000 
+0200
@@ -7,7 +7,7 @@
     lightArgs: 
 -->
 <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"; 
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension";>
-    <Product Id="22B04FDB-9BAB-46B0-87B8-A39544ECECD3" Name="ModSecurity IIS" 
Language="1033" Version="2.9.1" Manufacturer="ModSecurity" 
UpgradeCode="82F09489-1678-4C38-ADCB-08C3757653DB">
+    <Product Id="22B04FDB-9BAB-46B0-87B8-A39544ECECD3" Name="ModSecurity IIS" 
Language="1033" Version="2.9.4" Manufacturer="ModSecurity" 
UpgradeCode="82F09489-1678-4C38-ADCB-08C3757653DB">
         <Package Description="ModSecurityISS" Comments="none" 
InstallerVersion="405" Compressed="yes" InstallPrivileges="elevated" 
InstallScope="perMachine" />
         <?define ProductName = "ModSecuirty IIS" ?>
         <?if $(sys.BUILDARCH) = x64 ?>
@@ -129,12 +129,15 @@
                     </Directory>
                 </Directory>
             </Directory>
-            <?endif ?>
+           <?endif ?>
             <Directory Id="$(var.PlatformProgramFilesFolder)">
                    <Directory Id="INSTALLFOLDER" Name="ModSecurity IIS">
+                           <!--
                         <Component Id="OWASP_CRS_V_3_0_2_SETUP" DiskId="1" 
Guid="64629082-F6A2-4675-9E3E-4EA363CD6500">
                           <File Id="CRS_SETUP.CONF.EXAMPLE" 
Name="crs-setup.conf.example" Source="release\owasp_crs\crs-setup.conf.example" 
/>
-                        </Component>
+                       </Component>
+                       -->
+           <!--
                     <Directory Id="OWASP_CRS" Name="owasp_crs">
                         <Component Id="OWASP_CRS_V_3_0_2" DiskId="1" 
Guid="64629082-F6A2-4675-9E3E-4EA363CD6502">
                             <File Id="CHANGES" Name="CHANGES" 
Source="release\owasp_crs\CHANGES" />
@@ -208,7 +211,7 @@
                                 <File Id="UNIX_SHELL.DATA" 
Name="unix-shell.data" Source="release\owasp_crs\rules\unix-shell.data" />
                                 <File Id="WINDOWS_POWERSHELL_COMMANDS.DATA" 
Name="windows-powershell-commands.data" 
Source="release\owasp_crs\rules\windows-powershell-commands.data" />
                             </Component>
-                        </Directory>
+                       </Directory>
                         <Directory Id="UTIL" Name="util">
                             <Component Id="UTIL" DiskId="1" 
Guid="A95D50D7-4E87-4A87-BAD1-12370B8F5B9B">
                                 <File Id="ID_RANGE" Name="id-range" 
Source="release\owasp_crs\util\id-range" />
@@ -294,13 +297,14 @@
                             </Directory>
                         </Directory>
                     </Directory>
+           -->
                 </Directory>
-            </Directory>
+           </Directory>
             <Directory Id="ProgramMenuFolder">
                 <Directory Id="ProgramMenuDir" Name="ModSecurity IIS">
                     <Component Id="StartMenuShortcuts" 
Guid="43C26B13-C4D8-42F8-8715-3AF78E66C902">
                         <util:InternetShortcut Id="WebsiteShortcut" 
Name="ModSecurity" Target="http://www.modsecurity.org/"; />
-                        <util:InternetShortcut Id="CSR" Name="OWASP 
ModSecurity Core Rule Set" 
Target="http://spIderlabs.github.io/owasp-modsecurity-crs/"; />
+                       <!--<util:InternetShortcut Id="CSR" Name="OWASP 
ModSecurity Core Rule Set" 
Target="http://spIderlabs.github.io/owasp-modsecurity-crs/"; />-->
                         <RemoveFolder Id="ProgramMenuDir" On="uninstall" />
                         <RegistryValue Root="HKCU" 
Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" />
                         <Shortcut Id="UninstallProduct" Name="Uninstall" 
Description="Uninstalls the ModSecurity IIS" 
Target="[System64Folder]msiexec.exe" Arguments="/x [ProductCode]" />
@@ -315,104 +319,189 @@
                 </Directory>
             </Directory>
         </Directory>
-        <DirectoryRef Id="INSTALLFOLDER">
-            <Component Id="ModSecCommon" DiskId="1" 
Guid="980270DF-81AB-469B-AB0E-64FA3BA160B6" Location="local">
-                <File Id="README.TXT" Name="README.TXT" 
Source="wix\README.TXT" />
-                <File Id="EULA.RTF" Name="EULA.rtf" Source="wix\EULA.rtf" />
-                <File Id="modsecurity.conf" Name="modsecurity.conf" 
Source="wix\modsecurity.conf" />
-                <File Id="modsecurity_iis.conf" Name="modsecurity_iis.conf" 
Source="wix\modsecurity_iis.conf" />
-                <File Id="unicode.mapping" Name="unicode.mapping" 
Source="wix\unicode.mapping" />
-       <!-- <File Id="modsecurity_crs_10_setup.conf" 
Name="modsecurity_crs_10_setup.conf" Source="wix\modsecurity_crs_10_setup.conf" 
/> -->
-                <File Id="LIST_DEPENDENCIES.BAT" Name="list_dependencies.bat" 
Source="wix\list_dependencies.bat" />
-                <File Id="ModSecurity.xml" Name="ModSecurity.xml" 
Source="ModSecurity.xml" />
-                <!-- Modify ApplicationHost.config -->
-                <util:XmlConfig Id="appHostEntry" File="$(var.ConfigFile)" 
Action="create" 
ElementPath="//configuration/configSections/sectionGroup[\[]@name='system.webServer'[\]]"
 VerifyPath="section[\[]@name='ModSecurity'[\]]" Name="section" Node="element" 
Sequence="1" On="install" />
-                <util:XmlConfig Id="appHostEntryName" File="$(var.ConfigFile)" 
ElementPath="appHostEntry" Name="name" Value="ModSecurity" Sequence="2" />
-                <util:XmlConfig Id="appHostEntryOverrideMode" 
File="$(var.ConfigFile)" ElementPath="appHostEntry" Name="overrideModeDefault" 
Value="Allow" Sequence="3" />
-                <util:XmlConfig Id="appHostEntryAllowDefinition" 
File="$(var.ConfigFile)" ElementPath="appHostEntry" Name="allowDefinition" 
Value="Everywhere" Sequence="4" />
-                <util:XmlConfig Id="removeAppHostEntry" 
File="$(var.ConfigFile)" Action="delete" 
ElementPath="/configuration/configSections/sectionGroup[\[]@name='system.webServer'[\]]"
 Node="element" VerifyPath="section[\[]@name='ModSecurity'[\]]" On="uninstall" 
Sequence="1" />
-                <util:XmlConfig Id="removeAppHostEntry2" 
File="$(var.ConfigFile)" Action="delete" 
ElementPath="/configuration/system.webServer" Node="element" 
VerifyPath="/configuration/system.webServer/ModSecurity" Name="section" 
On="uninstall" Sequence="2" />
-                <RegistryKey Root="HKLM" 
Key="SOFTWARE\ModSecurity\ModSecurity" Action="createAndRemoveOnUninstall">
-                    <RegistryValue Type="string" 
Name="ModSecurityConfigureIIS" Value="[IIS_SETUP]" KeyPath="yes" />
-                </RegistryKey>
-            </Component>
-        </DirectoryRef>
-        <?if $(var.Win64) = "yes" ?>
-        <DirectoryRef Id="inetsrv64">
-            <Component Id="ModSec64" DiskId="1" 
Guid="514A81F0-2413-42EF-B19F-E2613125ECE0" Win64="yes" Location="local">
-                <File Id="_64_LIBAPR_1" Name="libapr-1.dll" 
Source="Release\amd64\libapr-1.dll" />
-                <File Id="_64_LIBAPRICONV_1" Name="libapriconv-1.dll" 
Source="Release\amd64\libapriconv-1.dll" />
-                <File Id="_64_LIBAPRUTIL_1" Name="libaprutil-1.dll" 
Source="Release\amd64\libaprutil-1.dll" />
-                <File Id="_64_LIBCURL" Name="libcurl.dll" 
Source="Release\amd64\libcurl.dll" />
-                <File Id="_64_LIBXML2" Name="libxml2.dll" 
Source="Release\amd64\libxml2.dll" />
-                <File Id="_64_LUA5.1" Name="lua5.1.dll" 
Source="Release\amd64\lua5.1.dll" />
-                <File Id="_64_YAJL" Name="yajl.dll" 
Source="Release\amd64\yajl.dll" />
-                <File Id="_64_MLOGC" Name="mlogc.exe" 
Source="Release\amd64\mlogc.exe" />
-                <File Id="_64_MODSECURITYIIS" Name="ModSecurityIIS.dll" 
Source="Release\amd64\ModSecurityIIS.dll" />
-                <File Id="_64_PCRE" Name="pcre.dll" 
Source="Release\amd64\pcre.dll" />
-                <File Id="_64_ZLIB1" Name="zlib1.dll" 
Source="Release\amd64\zlib1.dll" />
-                <File Id="_64_FUZZY" Name="fuzzy.dll" 
Source="Release\amd64\fuzzy.dll" />
-            </Component>
-        </DirectoryRef>
-        <DirectoryRef Id="inetsrv32">
-            <Component Id="ModSec32" DiskId="1" 
Guid="514A81F0-2413-42EF-B19F-E2613125ECE7" Win64="no" Location="local">
-                <File Id="_32_LIBAPR_1" Name="libapr-1.dll" 
Source="Release\x86\libapr-1.dll" />
-                <File Id="_32_LIBAPRICONV_1" Name="libapriconv-1.dll" 
Source="Release\x86\libapriconv-1.dll" />
-                <File Id="_32_LIBAPRUTIL_1" Name="libaprutil-1.dll" 
Source="Release\x86\libaprutil-1.dll" />
-                <File Id="_32_LIBCURL" Name="libcurl.dll" 
Source="Release\x86\libcurl.dll" />
-                <File Id="_32_LIBXML2" Name="libxml2.dll" 
Source="Release\x86\libxml2.dll" />
-                <File Id="_32_LUA5.1" Name="lua5.1.dll" 
Source="Release\x86\lua5.1.dll" />
-                <File Id="_32_YAJL" Name="yajl.dll" 
Source="Release\x86\yajl.dll" />
-                <File Id="_32_MLOGC" Name="mlogc.exe" 
Source="Release\x86\mlogc.exe" />
-                <File Id="_32_MODSECURITYIIS" Name="ModSecurityIIS.dll" 
Source="Release\x86\ModSecurityIIS.dll" />
-                <File Id="_32_PCRE" Name="pcre.dll" 
Source="Release\x86\pcre.dll" />
-                <File Id="_32_ZLIB1" Name="zlib1.dll" 
Source="Release\x86\zlib1.dll" />
-                <File Id="_32_FUZZY" Name="fuzzy.dll" 
Source="Release\x86\fuzzy.dll" />
-            </Component>
-        </DirectoryRef>
-        <DirectoryRef Id="SystemFolderConfigSchema32">
-            <Component Id="ConfigSchema32" 
Guid="514A81F0-2413-42EF-B19F-E2613125EC11" Location="local" Win64="no">
-                <File Id="_32_ConfigSchema" Name="ModSecurity.xml" 
Source="ModSecurity.xml" />
-            </Component>
-        </DirectoryRef>
-        <DirectoryRef Id="SystemFolderConfigSchema64">
-            <Component Id="ConfigSchema64" 
Guid="514A81F0-2413-42EF-B19F-E2613125EC22" Location="local" Win64="yes">
-                <File Id="_64_ConfigSchema" Name="ModSecurity.xml" 
Source="ModSecurity.xml" />
-            </Component>
-        </DirectoryRef>
-        <?else ?>
-        <DirectoryRef Id="inetsrv32">
-            <Component Id="ModSec32" DiskId="1" 
Guid="514A81F0-2413-42EF-B19F-E2613125ECE1" Win64="no" Location="local">
-                <File Id="_32_LIBAPR_1" Name="libapr-1.dll" 
Source="Release\x86\libapr-1.dll" />
-                <File Id="_32_LIBAPRICONV_1" Name="libapriconv-1.dll" 
Source="Release\x86\libapriconv-1.dll" />
-                <File Id="_32_LIBAPRUTIL_1" Name="libaprutil-1.dll" 
Source="Release\x86\libaprutil-1.dll" />
-                <File Id="_32_LIBCURL" Name="libcurl.dll" 
Source="Release\x86\libcurl.dll" />
-                <File Id="_32_LIBXML2" Name="libxml2.dll" 
Source="Release\x86\libxml2.dll" />
-                <File Id="_32_LUA5.1" Name="lua5.1.dll" 
Source="Release\x86\lua5.1.dll" />
-                <File Id="_32_YAJL" Name="yajl.dll" 
Source="Release\x86\yajl.dll" />
-                <File Id="_32_MLOGC" Name="mlogc.exe" 
Source="Release\x86\mlogc.exe" />
-                <File Id="_32_MODSECURITYIIS" Name="ModSecurityIIS.dll" 
Source="Release\x86\ModSecurityIIS.dll" />
-                <File Id="_32_PCRE" Name="pcre.dll" 
Source="Release\x86\pcre.dll" />
-                <File Id="_32_ZLIB1" Name="zlib1.dll" 
Source="Release\x86\zlib1.dll" />
-                <File Id="_32_FUZZY" Name="fuzzy.dll" 
Source="Release\x86\fuzzy.dll" />
-            </Component>
-        </DirectoryRef>
-        <DirectoryRef Id="SystemFolderConfigSchema32">
-            <Component Id="ConfigSchema32" 
Guid="514A81F0-2413-42EF-B19F-E2613125EC11" Location="local" Win64="no">
-                <File Id="_32_ConfigSchema" Name="ModSecurity.xml" 
Source="ModSecurity.xml" />
-            </Component>
-        </DirectoryRef>
-        <?endif ?>
-        <Feature Id="DefaultFeature" Title="ModSecurity IIS Common files" 
Level="1" InstallDefault="local" Absent="disallow" Display="expand" 
AllowAdvertise="no" Description="Configuration and common files">
-            <ComponentRef Id="ModSecCommon" />
-            <ComponentRef Id="ConfigSchema32" />
-            <?if $(var.Win64) = "yes" ?>
-            <ComponentRef Id="ConfigSchema64" />
-            <?endif ?>
-            <ComponentRef Id="StartMenuShortcuts" />
-            <Feature Id="OWASP_ModSecurity_CRS_v3.0.2" Level="1" Title="OWASP 
ModSecurity CRS v3.0.2" InstallDefault="local" Display="expand" 
AllowAdvertise="no" Description="Install OWASP CRS v3.0.2">
-                   <ComponentRef Id="OWASP_CRS_V_3_0_2" />
-                   <ComponentRef Id="OWASP_CRS_V_3_0_2_SETUP" />
+       <DirectoryRef Id="INSTALLFOLDER"> <Component Id="ModSecCommon"
+                       DiskId="1" Guid="980270DF-81AB-469B-AB0E-64FA3BA160B6"
+                       Location="local"> <File Id="README.TXT"
+                               Name="README.TXT" Source="wix\README.TXT" />
+                       <File Id="EULA.RTF" Name="EULA.rtf"
+                               Source="wix\EULA.rtf" /> <File
+                               Id="modsecurity.conf" Name="modsecurity.conf"
+                               Source="wix\modsecurity.conf" />
+               <File Id="modsecurity_iis.conf" Name="modsecurity_iis.conf"
+                       Source="wix\modsecurity_iis.conf" /> <File
+                       Id="unicode.mapping" Name="unicode.mapping"
+                       Source="wix\unicode.mapping" />
+       <!-- <File Id="modsecurity_crs_10_setup.conf"
+               Name="modsecurity_crs_10_setup.conf"
+               Source="wix\modsecurity_crs_10_setup.conf" /> --> <File
+               Id="LIST_DEPENDENCIES.BAT" Name="list_dependencies.bat"
+               Source="wix\list_dependencies.bat" /> <File
+               Id="ModSecurity.xml" Name="ModSecurity.xml"
+               Source="ModSecurity.xml" />
+               <!-- Modify ApplicationHost.config --> <util:XmlConfig
+                       Id="appHostEntry" File="$(var.ConfigFile)"
+                       Action="create"
+                       
ElementPath="//configuration/configSections/sectionGroup[\[]@name='system.webServer'[\]]"
+                       VerifyPath="section[\[]@name='ModSecurity'[\]]"
+                       Name="section" Node="element" Sequence="1" On="install"
+                       /> <util:XmlConfig Id="appHostEntryName"
+                       File="$(var.ConfigFile)" ElementPath="appHostEntry"
+                       Name="name" Value="ModSecurity" Sequence="2" />
+               <util:XmlConfig Id="appHostEntryOverrideMode"
+                       File="$(var.ConfigFile)" ElementPath="appHostEntry"
+                       Name="overrideModeDefault" Value="Allow" Sequence="3"
+                       /> <util:XmlConfig Id="appHostEntryAllowDefinition"
+                       File="$(var.ConfigFile)" ElementPath="appHostEntry"
+                       Name="allowDefinition" Value="Everywhere" Sequence="4"
+                       /> <util:XmlConfig Id="removeAppHostEntry"
+                       File="$(var.ConfigFile)" Action="delete"
+                       
ElementPath="/configuration/configSections/sectionGroup[\[]@name='system.webServer'[\]]"
+                       Node="element"
+                       VerifyPath="section[\[]@name='ModSecurity'[\]]"
+                       On="uninstall" Sequence="1" /> <util:XmlConfig
+                       Id="removeAppHostEntry2" File="$(var.ConfigFile)"
+                       Action="delete"
+                       ElementPath="/configuration/system.webServer"
+                       Node="element"
+                       VerifyPath="/configuration/system.webServer/ModSecurity"
+                       Name="section" On="uninstall" Sequence="2" />
+               <RegistryKey Root="HKLM" Key="SOFTWARE\ModSecurity\ModSecurity"
+                       Action="createAndRemoveOnUninstall"> <RegistryValue
+                               Type="string" Name="ModSecurityConfigureIIS"
+                               Value="[IIS_SETUP]" KeyPath="yes" />
+               </RegistryKey> </Component> </DirectoryRef> <?if $(var.Win64) =
+               "yes" ?> <DirectoryRef Id="inetsrv64"> <Component Id="ModSec64"
+                               DiskId="1"
+                               Guid="514A81F0-2413-42EF-B19F-E2613125ECE0"
+                               Win64="yes" Location="local"> <File
+                                       Id="_64_LIBAPR_1" Name="libapr-1.dll"
+                                       Source="Release\amd64\libapr-1.dll" />
+                               <File Id="_64_LIBAPRICONV_1"
+                                       Name="libapriconv-1.dll"
+                                       Source="Release\amd64\libapriconv-1.dll"
+                                       /> <File Id="_64_LIBAPRUTIL_1"
+                                       Name="libaprutil-1.dll"
+                                       Source="Release\amd64\libaprutil-1.dll"
+                                       /> <File Id="_64_LIBCURL"
+                                       Name="libcurl.dll"
+                                       Source="Release\amd64\libcurl.dll" />
+                               <File Id="_64_LIBXML2" Name="libxml2.dll"
+                                       Source="Release\amd64\libxml2.dll" />
+                               <File Id="_64_LUA5.1" Name="lua5.1.dll"
+                                       Source="Release\amd64\lua5.1.dll" />
+                               <File Id="_64_YAJL" Name="yajl.dll"
+                                       Source="Release\amd64\yajl.dll" />
+                               <File Id="_64_MLOGC" Name="mlogc.exe"
+                                       Source="Release\amd64\mlogc.exe" />
+                               <File Id="_64_MODSECURITYIIS"
+                                       Name="ModSecurityIIS.dll"
+                                       
Source="Release\amd64\ModSecurityIIS.dll"
+                                       /> <File Id="_64_PCRE" Name="pcre.dll"
+                                       Source="Release\amd64\pcre.dll" />
+                               <File Id="_64_ZLIB1" Name="zlib1.dll"
+                                       Source="Release\amd64\zlib1.dll" />
+                               <File Id="_64_FUZZY" Name="fuzzy.dll"
+                                       Source="Release\amd64\fuzzy.dll" />
+                       </Component> </DirectoryRef> <DirectoryRef
+                       Id="inetsrv32"> <Component Id="ModSec32" DiskId="1"
+                               Guid="514A81F0-2413-42EF-B19F-E2613125ECE7"
+                               Win64="no" Location="local"> <File
+                                       Id="_32_LIBAPR_1" Name="libapr-1.dll"
+                                       Source="Release\x86\libapr-1.dll" />
+                               <File Id="_32_LIBAPRICONV_1"
+                                       Name="libapriconv-1.dll"
+                                       Source="Release\x86\libapriconv-1.dll"
+                                       /> <File Id="_32_LIBAPRUTIL_1"
+                                       Name="libaprutil-1.dll"
+                                       Source="Release\x86\libaprutil-1.dll"
+                                       /> <File Id="_32_LIBCURL"
+                                       Name="libcurl.dll"
+                                       Source="Release\x86\libcurl.dll" />
+                               <File Id="_32_LIBXML2" Name="libxml2.dll"
+                                       Source="Release\x86\libxml2.dll" />
+                               <File Id="_32_LUA5.1" Name="lua5.1.dll"
+                                       Source="Release\x86\lua5.1.dll" />
+                               <File Id="_32_YAJL" Name="yajl.dll"
+                                       Source="Release\x86\yajl.dll" /> <File
+                                       Id="_32_MLOGC" Name="mlogc.exe"
+                                       Source="Release\x86\mlogc.exe" /> <File
+                                       Id="_32_MODSECURITYIIS"
+                                       Name="ModSecurityIIS.dll"
+                                       Source="Release\x86\ModSecurityIIS.dll"
+                                       /> <File Id="_32_PCRE" Name="pcre.dll"
+                                       Source="Release\x86\pcre.dll" /> <File
+                                       Id="_32_ZLIB1" Name="zlib1.dll"
+                                       Source="Release\x86\zlib1.dll" /> <File
+                                       Id="_32_FUZZY" Name="fuzzy.dll"
+                                       Source="Release\x86\fuzzy.dll" />
+                       </Component> </DirectoryRef> <DirectoryRef
+                       Id="SystemFolderConfigSchema32"> <Component
+                               Id="ConfigSchema32"
+                               Guid="514A81F0-2413-42EF-B19F-E2613125EC11"
+                               Location="local" Win64="no"> <File
+                                       Id="_32_ConfigSchema"
+                                       Name="ModSecurity.xml"
+                                       Source="ModSecurity.xml" />
+               </Component> </DirectoryRef> <DirectoryRef
+               Id="SystemFolderConfigSchema64"> <Component Id="ConfigSchema64"
+                       Guid="514A81F0-2413-42EF-B19F-E2613125EC22"
+                       Location="local" Win64="yes"> <File
+                               Id="_64_ConfigSchema" Name="ModSecurity.xml"
+                               Source="ModSecurity.xml" /> </Component>
+                       </DirectoryRef> <?else ?> <DirectoryRef Id="inetsrv32">
+                       <Component Id="ModSec32" DiskId="1"
+                               Guid="514A81F0-2413-42EF-B19F-E2613125ECE1"
+                               Win64="no" Location="local"> <File
+                                       Id="_32_LIBAPR_1" Name="libapr-1.dll"
+                                       Source="Release\x86\libapr-1.dll" />
+                               <File Id="_32_LIBAPRICONV_1"
+                                       Name="libapriconv-1.dll"
+                                       Source="Release\x86\libapriconv-1.dll"
+                                       /> <File Id="_32_LIBAPRUTIL_1"
+                                       Name="libaprutil-1.dll"
+                                       Source="Release\x86\libaprutil-1.dll"
+                                       /> <File Id="_32_LIBCURL"
+                                       Name="libcurl.dll"
+                                       Source="Release\x86\libcurl.dll" />
+                               <File Id="_32_LIBXML2" Name="libxml2.dll"
+                                       Source="Release\x86\libxml2.dll" />
+                               <File Id="_32_LUA5.1" Name="lua5.1.dll"
+                                       Source="Release\x86\lua5.1.dll" />
+                               <File Id="_32_YAJL" Name="yajl.dll"
+                                       Source="Release\x86\yajl.dll" /> <File
+                                       Id="_32_MLOGC" Name="mlogc.exe"
+                                       Source="Release\x86\mlogc.exe" /> <File
+                                       Id="_32_MODSECURITYIIS"
+                                       Name="ModSecurityIIS.dll"
+                                       Source="Release\x86\ModSecurityIIS.dll"
+                                       /> <File Id="_32_PCRE" Name="pcre.dll"
+                                       Source="Release\x86\pcre.dll" /> <File
+                                       Id="_32_ZLIB1" Name="zlib1.dll"
+                                       Source="Release\x86\zlib1.dll" /> <File
+                                       Id="_32_FUZZY" Name="fuzzy.dll"
+                                       Source="Release\x86\fuzzy.dll" />
+                       </Component> </DirectoryRef> <DirectoryRef
+                       Id="SystemFolderConfigSchema32"> <Component
+                               Id="ConfigSchema32"
+                               Guid="514A81F0-2413-42EF-B19F-E2613125EC11"
+                               Location="local" Win64="no"> <File
+                                       Id="_32_ConfigSchema"
+                                       Name="ModSecurity.xml"
+                                       Source="ModSecurity.xml" />
+               </Component> </DirectoryRef> <?endif ?> <Feature
+               Id="DefaultFeature" Title="ModSecurity IIS Common files"
+               Level="1" InstallDefault="local" Absent="disallow"
+               Display="expand" AllowAdvertise="no" Description="Configuration
+               and common files"> <ComponentRef Id="ModSecCommon" />
+               <ComponentRef Id="ConfigSchema32" /> <?if $(var.Win64) = "yes"
+               ?> <ComponentRef Id="ConfigSchema64" /> <?endif ?>
+               <ComponentRef Id="StartMenuShortcuts" />
+           <!--
+           <Feature Id="OWASP_ModSecurity_CRS_v3.0.2" Level="1" Title="OWASP
+           ModSecurity CRS v3.0.2" InstallDefault="local" Display="expand"
+           AllowAdvertise="no" Description="Install OWASP CRS v3.0.2">
+           <ComponentRef Id="OWASP_CRS_V_3_0_2" /> <ComponentRef
+           Id="OWASP_CRS_V_3_0_2_SETUP" />
                    
                 <ComponentRef Id="ID_NUMBERING" />
                 <ComponentRef Id="README" />
@@ -430,7 +519,8 @@
                 <ComponentRef Id="REGRESSION_TESTS" />
                 <ComponentRef Id="VIRTUAL_PATCHING" />
             </Feature>
-        </Feature>
+       -->
+       </Feature>
         <Feature Id="VCRedist" Title="Visual C++ 12.0 Runtime" 
AllowAdvertise="no" Display="hidden" Level="1">
             <?if $(var.Win64) = "yes" ?>
             <MergeRef Id="VCRedist110_64" />
@@ -526,8 +616,8 @@
                 <Control Id="Title" Type="Text" X="15" Y="6" Width="210" 
Height="15" Transparent="yes" NoPrefix="yes" Text="{\WixUI_Font_Title}IIS 
Setup" />
                 <Control Id="Description" Type="Text" X="25" Y="23" 
Width="280" Height="15" Transparent="yes" NoPrefix="yes" Text="Choose to 
configure ModSecurity on IIS or not." />
                 <Control Id="Text" Type="Text" X="25" Y="55" Width="320" 
Height="50" Text="ModSecurityIIS needs to be configured under IIS as a module. 
It is recommended to perform this configuration during the installation. 
However, if you are facing problems in the installation, the recomendation is 
to disable this step. This will facilitate the debugging process since the 
files will be installed in place. Note that some scripts will be installed 
along with ModSecurity common files that can be later used to help this 
configuration/debugging process." />
-                <Control Type="CheckBox" Id="ConfigureIIS" Width="200" 
Height="14" X="25" Y="124" CheckBoxValue="1" Property="IIS_SETUP" Text="Perform 
ModSecurityIIS configuration." />
-                <Control Type="Text" Id="troubleshooting" Width="314" 
Height="37" X="26" Y="161" Text="For further information about problems during 
the installation, have a look at ModSecurityIIS Troubleshooting guide. 
Available at: 
https://github.com/SpiderLabs/ModSecurity/wiki/IIS-Troubleshooting"; />
+               <Control Type="CheckBox" Id="ConfigureIIS" Width="200" 
Height="14" X="25" Y="124" CheckBoxValue="1" Property="IIS_SETUP" Text="Perform 
ModSecurityIIS configuration." />
+                <Control Type="Text" Id="troubleshooting" Width="314" 
Height="67" X="26" Y="161" Text="For further information about problems during 
the installation, have a look at ModSecurityIIS Troubleshooting guide. 
Available at: 
https://github.com/SpiderLabs/ModSecurity/wiki/IIS-Troubleshooting. ATTENTION: 
This installation process no longer install OWASP CRS. Please refer to the 
OWASP CRS Project to understand how to install it. " />
             </Dialog>
             <Binary Id="bannrbmp" SourceFile="wix\banner.jpg" />
             <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/modsecurity-2.9.3/iis/wix/modsecurity_iis.conf 
new/modsecurity-2.9.4/iis/wix/modsecurity_iis.conf
--- old/modsecurity-2.9.3/iis/wix/modsecurity_iis.conf  2018-12-04 
19:49:38.000000000 +0100
+++ new/modsecurity-2.9.4/iis/wix/modsecurity_iis.conf  2021-06-21 
14:35:20.000000000 +0200
@@ -1,3 +1 @@
 Include modsecurity.conf
-Include crs-setup.conf.example
-Include owasp_crs\rules\*.conf

Reply via email to