-case "$1" in
- remove|deconfigure)
-
- # Include CARNet functions.
- . /usr/share/carnet-tools/functions.sh
-
- PKG="mod-security-cn"
- A2DIR="/etc/apache2"
- CONFDIR="$A2DIR/conf.d"
- MODSECCONF="$CONFDIR/mod-security-cn.conf"
- need_restart=0
-
- # Remove configuration file generated by this CARNet package.
- if [ -f "$MODSECCONF" ]; then
- if egrep -q "^## Begin - Generated by CARNet package mod-security-cn$" "$MODSECCONF"; then
- cp_echo "CN: Removing configuration file ${MODSECCONF}."
- rm -f $MODSECCONF
- need_restart=1
- fi
- fi
-
- # Restart Apache2 web server.
- if [ $need_restart -eq 1 ]; then
- if apache2ctl configtest 2>/dev/null; then
-
- # Restart Apache2 web server.
- if [ -x "/etc/init.d/apache2" ]; then
- if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
- invoke-rc.d apache2 restart || true
- else
- /etc/init.d/apache2 restart || true
- fi
- fi
- else
- # Something is broken.
- cp_echo "CN: Your Apache2 configuration seem to be broken."
- cp_echo "CN: Please, check the service configuration!"
- fi
- fi
-
- # Mail root
- cp_mail "$PKG"
-
- echo
- ;;
- upgrade|failed-upgrade)
- ;;
- *)
- echo "prerm called with unknown argument \$1'" >&2
- exit 0
- ;;
-esac
+PKG=mod-security-cn
+
+MODSECCONF=/etc/apache2/mod-security/$PKG.conf
+MODSECRBL=/etc/apache2/mod-security/rbl_lookup.conf
+MODSECLNK=/etc/apache2/conf-available/security2-cn.conf
+
+# chk_conf_tag ()
+#
+# Check if configuration file has CARNET package info lines.
+# return: $RET => 0 - tagged
+# 1 - file does not exists
+# 2 - file exists, but it is not tagged
+#
+chk_conf_tag () {
+ local conf_file
+ conf_file="$1"
+ RET=1
+
+ if [ -f "$conf_file" ]; then
+ if egrep -q "^## Begin - Generated by CARNET package mod-security-cn$" "$conf_file"; then
+ RET=0
+ else
+ RET=2
+ fi
+ fi
+}
+
+if [ -e /usr/share/apache2/apache2-maintscript-helper ]; then
+ . /usr/share/apache2/apache2-maintscript-helper
+
+ modsecurity_enable() {
+ chk_conf_tag "$MODSECLNK"
+ if [ $RET -ne 2 ]; then
+ echo "CN: Disabling $PKG configuration for Apache2."
+ return 0
+ fi
+ return 1
+ }
+else
+ echo "CN: Could not load Apache 2.4 maintainer script helper."
+
+ modsecurity_enable() {
+ return 1
+ }
+fi
+
+if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ]; then
+ # Disable ModSecurity configuration.
+ if modsecurity_enable; then
+ apache2_invoke disconf security2-cn
+ rm -f "$MODSECLNK"
+ fi
+
+ # Remove configuration files generated by this CARNET package.
+ for mfile in "$MODSECCONF" "$MODSECRBL"; do
+ chk_conf_tag "$mfile"
+ if [ $RET -eq 0 ]; then
+ echo "CN: Removing configuration file $mfile"
+ rm -f "$mfile"
+ fi
+ done
+fi
+
+#DEBHELPER#