summaryrefslogtreecommitdiffstats
path: root/testing/psad/psad.initd
diff options
context:
space:
mode:
Diffstat (limited to 'testing/psad/psad.initd')
-rw-r--r--testing/psad/psad.initd45
1 files changed, 45 insertions, 0 deletions
diff --git a/testing/psad/psad.initd b/testing/psad/psad.initd
new file mode 100644
index 000000000..4b3df090d
--- /dev/null
+++ b/testing/psad/psad.initd
@@ -0,0 +1,45 @@
+#!/sbin/runscript
+
+# This file is part of PSAD (Port Scan Attack Detector)
+# Adapted for Alpine Linux by IT Offshore <developer@it-offshore.co.uk>
+
+command="/usr/sbin/psad"
+pidfile="/var/run/psad/psad.pid"
+config_file="/etc/psad/psad.conf"
+
+depend() {
+ need net
+ need logger
+ after iptables
+}
+
+# allow override config_file location from conf.d
+: ${config_file:="/etc/psad/psad.conf"}
+
+check_config() {
+ [ -f "$config_file" ] || error "$config_file is missing"
+}
+
+start_pre() {
+ check_config || return 1
+ # make sure dir for pidfile exists. /var/run is tmpfs...
+ checkpath --directory ${pidfile%/*}
+}
+
+stop() {
+ local piddir=${pidfile%/*}
+ ebegin "Stopping psadwatchd"
+ start-stop-daemon --stop --quiet --pidfile $piddir/psadwatchd.pid
+ eend $? "Failed to stop psadwatchd"
+
+ if [ -f $piddir/kmsgsd.pid ] ; then
+ ebegin "Stopping kmsgsd"
+ start-stop-daemon --stop --quiet --pidfile $piddir/kmsgsd.pid
+ eend $? "Failed to stop kmsgsd"
+ fi
+
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --quiet --pidfile $piddir/psad.pid
+ eend $? "Failed to stop ${SVCNAME}"
+}
+