Hi, With my previous patches, I have forgotten 2 modifications of running() function: - The output of the pid found - The check for instance without PIDFILE.
The attached patch contains all modifications without cleaning spaces/indent. Regards,
diff -ru samhain-3.1.0/debian/samhain.init samhain-3.1.0-patched/debian/samhain.init
--- samhain-3.1.0/debian/samhain.init 2016-03-14 22:54:42.000000000 +0100
+++ samhain-3.1.0-patched/debian/samhain.init 2016-03-14 23:09:00.671890834 +0100
@@ -35,13 +35,11 @@
pid=`cat $PIDFILE`
# No pid, probably no daemon present
if [ -n "$pid" ] ; then
- pidofproc -p $PIDFILE $DAEMON
+ pidofproc -p $PIDFILE $DAEMON >/dev/null
return $?
fi
fi
-# Try to find the daemon by name
- pidof $DAEMON >/dev/null
- return $?
+ return 1
}
# Initialize
@@ -72,13 +70,13 @@
;;
stop)
log_begin_msg "Stopping $DESC: $NAME"
- start-stop-daemon --stop --quiet --retry 5 --oknodo --pidfile $PIDFILE --name $NAME
+ start-stop-daemon --stop --quiet --retry 30 --oknodo --pidfile $PIDFILE --name $NAME
log_end_msg $?
;;
reload)
log_begin_msg "Reloading $DESC configuration files: $NAME"
if running ; then
- start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON
+ start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --exec $DAEMON
log_end_msg $?
else
log_daemon_msg " ERROR: $DAEMON is not running."
@@ -89,11 +87,7 @@
restart|force-reload)
log_begin_msg "Restarting $DESC: $NAME"
if running; then
- start-stop-daemon --stop --quiet --retry 5 --oknodo --pidfile $PIDFILE --name $NAME
- for i in 1 2 3 ; do
- if ! running; then break ; fi
- sleep 1
- done
+ start-stop-daemon --stop --quiet --retry 30 --oknodo --pidfile $PIDFILE --name $NAME
fi
if ! running ; then
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON
signature.asc
Description: OpenPGP digital signature

