From dfba9f51b7dd503418321eecdb7ad006a0dd7bc0 Mon Sep 17 00:00:00 2001 From: Michael van Elst Date: Mon, 21 Jul 2003 16:14:44 +0000 Subject: [PATCH] %status and pidfile handling --- djbdns/rc.djbdns | 61 +++++++++++++++++++++++++++++++++--------------- 1 file changed, 42 insertions(+), 19 deletions(-) diff --git a/djbdns/rc.djbdns b/djbdns/rc.djbdns index 9120dafe77..c5bd6ff2e0 100644 --- a/djbdns/rc.djbdns +++ b/djbdns/rc.djbdns @@ -10,28 +10,51 @@ djbdns_var="@l_prefix@/var/djbdns" djbdns_progs="dnscache tinydns" +%common + djbdns_signal () { + local s + local rc=0 + for s in $djbdns_progs ; do + if [ -f $djbdns_var/$s.pid ]; then + kill -$1 `cat $djbdns_var/$s.pid` || rc=1 + fi + done + [ $rc -eq 0 ] + } + djbdns_start () { + local s + for s in $djbdns_progs ; do + if [ -d $djbdns_var/$s ]; then + $djbdns_runsvc \ + $djbdns_bin/$s \ + $djbdns_var/$s \ + >$djbdns_var/$s.pid + fi + done + } + djbdns_stop () { + local s + djbdns_signal TERM + for s in $djbdns_progs ; do + rm -f $djbdns_var/$s.pid 2>/dev/null || true + done + } + +%status -p 200 -u @l_susr@ -o + ntp_usable="unknown" + ntp_active="no" + rcService ntp enable yes && \ + rcVarIsYes ntp_daemon && \ + ntp_signal 0 && ntp_active="yes" + echo "ntp_enable=\"$ntp_enable\"" + echo "ntp_usable=\"$ntp_usable\"" + echo "ntp_active=\"$ntp_active\"" + %start -p 200 -u @l_susr@ rcService djbdns enable yes || exit 0 - for s in $djbdns_progs ; do - if [ -d $djbdns_var/$s ]; then - $djbdns_runsvc \ - $djbdns_bin/$s \ - $djbdns_var/$s \ - >$djbdns_var/$s.pid - fi - done + djbdns_start %stop -p 200 -u @l_susr@ rcService djbdns enable yes || exit 0 - for s in $djbdns_progs ; do - if [ -f $djbdns_var/$s.pid ]; then - pid=`cat $djbdns_var/$s.pid` - if [ x"$pid" != x ]; then - kill -TERM "$pid" - rm $djbdns_var/$s.pid - else - echo "ERROR: Invalid pid-file '$djbdns_var/$s.pid'" - fi - fi - done + djbdns_stop