Fix 'occurred' typo
[bpdyndnsd] / scripts / bpdyndnsd
... / ...
CommitLineData
1#! /bin/sh
2#
3# bpdyndnsd
4#
5# chkconfig: 35 90 20
6# description: Bullet proof dynamic DNS update daemon.
7# processname: bpdyndnsd
8# config: /etc/bpdyndnsd/bpdyndnsd.conf
9# pidfile: /var/run/bpdyndnsd/bpdyndnsd.pid
10
11# Source function library.
12. /etc/rc.d/init.d/functions
13
14# Configuration
15. /etc/sysconfig/bpdyndnsd
16
17# Prog name
18progname="bpdyndnsd (dynamic DNS update daemon)"
19# User and group
20user=bpdyndnsd
21group=bpdyndnsd
22# Binary file
23prog=/usr/bin/bpdyndnsd
24# PID file
25pidfile=/var/run/bpdyndnsd/bpdyndnsd.pid
26
27test -x ${prog} || exit 0
28test -e /etc/bpdyndnsd/bpdyndnsd.conf || exit 0
29
30
31##
32## the functions:
33##
34
35start() {
36 [ -f /var/lock/subsys/bpdyndnsd ] && stop
37
38 if [ $START_BPDYNDNSD -eq 1 ]; then
39 # Check if this is really bpdyndnsd's pid file
40 if [ -f $pidfile ]; then
41 if ! grep -s -q "bpdyndnsd" /proc/`cat $pidfile`/cmdline; then
42 echo "Unlinking non-bpdyndnsd pid file"
43 rm -f $pidfile
44 fi
45 fi
46
47 echo -n "Starting $progname: "
48 daemon --user bpdyndnsd $prog --daemon_mode 1 --syslog 1;
49 RETVAL=$?
50 [ $RETVAL -eq 0 ] && success || failure
51 echo
52 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/bpdyndnsd
53 fi
54}
55
56stop() {
57 if [ ! -f /var/lock/subsys/bpdyndnsd ]; then
58 return 0
59 fi
60
61 echo -n "Stopping $progname: "
62 killproc bpdyndnsd
63 RETVAL=$?
64 [ $RETVAL -eq 0 ] && success || failure
65 echo
66 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/bpdyndnsd
67}
68
69reload() {
70 echo -n "Reloading $progname: "
71 killproc bpdyndnsd -HUP
72 RETVAL=$?
73 [ $RETVAL -eq 0 ] && success || failure
74 echo
75}
76
77restart() {
78 stop
79 start
80}
81
82online() {
83 echo -n "Switching $progname to online mode: "
84 killproc bpdyndnsd -USR2
85 RETVAL=$?
86 [ $RETVAL -eq 0 ] && success || failure
87 echo
88}
89
90online_webcheck() {
91 echo -n "Switching $progname to online mode with webcheck enabled: "
92 killproc bpdyndnsd -RTMIN
93 RETVAL=$?
94 [ $RETVAL -eq 0 ] && success || failure
95 echo
96}
97
98offline() {
99 echo -n "Switching $progname to offline mode: "
100 killproc bpdyndnsd -USR1
101 RETVAL=$?
102 [ $RETVAL -eq 0 ] && success || failure
103 echo
104}
105
106##
107## determine what we should do:
108##
109case "$1" in
110 start)
111 start
112 ;;
113 stop)
114 stop
115 ;;
116 status)
117 status $prog
118 RETVAL=$?
119 ;;
120 restart)
121 restart
122 ;;
123 reload)
124 reload
125 ;;
126 condrestart)
127 [ -f /var/lock/subsys/bpdyndnsd ] && restart || :
128 ;;
129 online)
130 online
131 ;;
132 online_webcheck)
133 online_webcheck
134 ;;
135 offline)
136 offline
137 ;;
138 *)
139 echo "Usage: bpdyndnsd {start|stop|status|restart|reload|condrestart|online|online_webcheck|offline}"
140 RETVAL=1
141esac
142
143exit $RETVAL