Use /var/run/milter/milter.pid if available.

This commit is contained in:
Stuart Gathman
2008-11-01 04:27:59 +00:00
parent 66314dc675
commit 394e7c6b8e
+24
View File
@@ -46,8 +46,32 @@ start() {
stop() { stop() {
# Stop daemons. # Stop daemons.
echo -n "Shutting down $prog: " echo -n "Shutting down $prog: "
# Find pid.
pid=
base="milter"
if [ -f /var/run/milter/milter.pid ]; then
local line p
read line < /var/run/milter/milter.pid
for p in $line ; do
[ -z "${p//[0-9]/}" -a -d "/proc/$p" ] && pid="$pid $p"
done
fi
if test -n "$pid"; then
checkpid $pid && kill "$pid"
for i in 1 2 3 4 5 6 7 8 9 0; do
checkpid $pid && sleep 2 || break
done
if checkpid $pid; then
failure $"$base shutdown"
RETVAL=1
else
success $"$base shutdown"
RETVAL=0
fi
else
killproc -d 9 milter killproc -d 9 milter
RETVAL=$? RETVAL=$?
fi
echo echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/milter [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/milter
return $RETVAL return $RETVAL