package/fail2ban: add fixup for default configuration
authorAngelo Compagnucci <angelo@amarulasolutions.com>
Thu, 28 Mar 2019 13:41:00 +0000 (14:41 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Thu, 28 Mar 2019 16:52:50 +0000 (17:52 +0100)
fail2ban default configuration is not compatible with buildroot as is.
In order to not force the user to overwrite it in an overlay and
having a fail2ban service running out of the box, this patch adds a
fixup step to adapt the default configuration to running on buildroot.

The dbfile is None to not add a dependency on
BR2_PACKAGE_PYTHON_SQLITE.

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/fail2ban/fail2ban.mk

index b7e6bdc1a6a52b0ffd241c9f9f8a32eeb61d9a57..16fa63c147110c34d2456265f6838d265e6f977b 100644 (file)
@@ -10,6 +10,13 @@ FAIL2BAN_LICENSE = GPL-2.0+
 FAIL2BAN_LICENSE_FILES = COPYING
 FAIL2BAN_SETUP_TYPE = distutils
 
+define FAIL2BAN_FIX_DEFAULT_CONFIG
+       $(SED) '/^socket/c\socket = /run/fail2ban.sock' $(TARGET_DIR)/etc/fail2ban/fail2ban.conf
+       $(SED) '/^pidfile/c\pidfile = /run/fail2ban.pid' $(TARGET_DIR)/etc/fail2ban/fail2ban.conf
+       $(SED) '/^dbfile/c\dbfile = None' $(TARGET_DIR)/etc/fail2ban/fail2ban.conf
+endef
+FAIL2BAN_POST_INSTALL_TARGET_HOOKS += FAIL2BAN_FIX_DEFAULT_CONFIG
+
 define FAIL2BAN_INSTALL_INIT_SYSV
        $(INSTALL) -D -m 755 package/fail2ban/S60fail2ban \
                $(TARGET_DIR)/etc/init.d/S60fail2ban
@@ -22,6 +29,7 @@ define FAIL2BAN_INSTALL_INIT_SYSTEMD
        ln -fs ../../../../usr/lib//systemd/system/fail2ban.service \
                $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/fail2ban.service
        $(SED) 's,@BINDIR@,/usr/bin,g' $(TARGET_DIR)/usr/lib/systemd/system/fail2ban.service
+       $(SED) '/^PIDFile/c\PIDFile=/run/fail2ban.pid' $(TARGET_DIR)/usr/lib/systemd/system/fail2ban.service
 endef
 
 $(eval $(python-package))