6 # description: Bullet proof dynamic DNS update daemon.
7 # processname: bpdyndnsd
8 # config: /etc/bpdyndnsd/bpdyndnsd.conf
9 # pidfile: /var/run/bpdyndnsd.pid
11 # Source function library.
12 . /etc/rc.d/init.d/functions
15 . /etc/sysconfig/bpdyndnsd
18 progname="bpdyndnsd (dynamic DNS update daemon)"
23 prog=/usr/bin/bpdyndnsd
25 pidfile=/var/run/bpdyndnsd.pid
27 test -x ${prog} || exit 0
28 test -e /etc/bpdyndnsd/bpdyndnsd.conf || exit 0
35 [ -f ${path_pidfile} ] || return 1
36 pid_from_file=`head -n1 ${path_pidfile}`
37 [ -L /proc/${pid_from_file}/exe ] || return 1
38 [ "`readlink /proc/${pid_from_file}/exe`" = "${path_prg}" ]
48 [ -f /var/lock/subsys/bpdyndnsd ] && stop
50 if [ $START_BPDYNDNSD -eq 1 ]; then
51 # Check if this is really bpdyndnsd's pid file
52 if [ -f $pidfile ]; then
53 if ! grep -s -q "bpdyndnsd" /proc/`cat $pidfile`/cmdline; then
54 echo "Unlinking non-bpdyndnsd pid file"
59 echo -n "Starting $progname: "
60 $prog --daemon_mode 1 --syslog 1;
62 [ $RETVAL -eq 0 ] && success || failure
64 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/bpdyndnsd
69 if [ ! -f /var/lock/subsys/bpdyndnsd ]; then
73 echo -n "Stopping $progname: "
76 [ $RETVAL -eq 0 ] && success || failure
78 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/bpdyndnsd
82 echo -n "Reloading $progname: "
83 killproc bpdyndnsd -HUP
85 [ $RETVAL -eq 0 ] && success || failure
96 ## determine what we should do:
116 [ -f /var/lock/subsys/bpdyndnsd ] && restart || :
119 echo "Usage: bpdyndnsd {start|stop|status|restart|reload|condrestart}"