Use the host compiler for build tool c-ify.
[darkstat-debian] / debian / init.d
1 #! /bin/sh
2 ### BEGIN INIT INFO
3 # Provides:          darkstat
4 # Required-Start: $remote_fs $network
5 # Required-Stop:  $remote_fs 
6 # Default-Start:     2 3 4 5
7 # Default-Stop:      0 1 6
8 # Short-Description: start darkstat monitoring system at boot time
9 ### END INIT INFO
10 #
11 # Please read /usr/share/doc/darkstat/README.Debian
12
13 set -e
14
15 . /lib/lsb/init-functions
16
17 PATH=/bin:/usr/bin:/sbin:/usr/sbin
18 DAEMON="/usr/sbin/darkstat"
19 NAME="darkstat"
20 DESC="darkstat network daemon"
21 INIT="/etc/darkstat/init.cfg"
22 HOMEDIR="/var/lib/darkstat"
23 PIDFILE="/var/run/$NAME.pid"
24 DIR="/var/lib/darkstat"
25
26 test -f $DAEMON || exit 0
27
28 test -f $INIT || exit 0
29
30
31 INTERFACE=""
32 PORT=""
33 BINDIP=""
34 LOCAL=""
35 DNS=""
36 DAYLOG=""
37 DB="--import darkstat.db --export darkstat.db"
38 FILTER=""
39
40 . $INIT
41
42 if [ "$START_DARKSTAT" = "no" ] ; then
43   log_warning_msg "please change the value of START_DARKSTAT in $INIT, in order to start darkstat"
44   exit 0
45 fi
46
47 test "$START_DARKSTAT" = "yes" || exit 0
48
49 case "$1" in
50 start)
51   log_begin_msg "Starting $DESC : $NAME "
52   if start-stop-daemon --start --quiet -b --exec $DAEMON -- \
53       $INTERFACE \
54       $PORT \
55       --chroot $DIR \
56       --pidfile $PIDFILE \
57       $BINDIP \
58       $LOCAL \
59       $FIP \
60       $DNS \
61       $DAYLOG \
62       $DB \
63       $OPTIONS \
64       -f "$FILTER"; then
65       log_success_msg "done"
66   else
67       log_progress_msg "already running"
68   fi
69   log_end_msg 0
70   ;;
71 stop)
72   log_begin_msg "Stopping $DESC : $NAME... "
73   if [ ! -f "$PIDFILE" ] ; then
74           log_progress_msg "not running"
75   else
76       if start-stop-daemon --quiet --oknodo --stop --name $NAME --pidfile $PIDFILE --retry 30; then
77            rm -f $PIDFILE
78            log_success_msg "stopped"
79       else
80            log_progress_msg "not running"
81       fi
82   fi
83   log_end_msg 0
84   ;;
85 restart | force-reload)
86   log_begin_msg "Restarting $DESC : $NAME "
87   if [ ! -f "$PIDFILE" ] ; then 
88      log_progress_msg "not running " 
89   else
90      if start-stop-daemon --stop --oknodo --name $NAME --pidfile $PIDFILE --retry 30; then
91           rm -f $PIDFILE
92       else
93          log_progress_msg "$DESC : $NAME is not running"
94          rm -f $PIDFILE
95      fi
96   fi
97   sleep 1
98   start-stop-daemon --start --quiet -b --exec $DAEMON -- \
99       $INTERFACE \
100       $PORT \
101       --chroot $DIR \
102       --pidfile $PIDFILE \
103       $BINDIP \
104       $LOCAL \
105       $FIP \
106       $DNS \
107       $DAYLOG \
108       $DB \
109       $OPTIONS \
110       -f "$FILTER"
111   log_success_msg "done"  
112   log_end_msg 0
113   ;;
114 debug-run)
115   log_success_msg "$0: this option is not longer available."
116   log_success_msg "$0: please run darkstat with --no-daemon option"
117   log_success_msg "$0: for more info please check darkstat(8)."
118   ;;
119
120 *)
121   N=/etc/init.d/$NAME
122    log_success_msg "Usage: $N {start|stop|restart|force-reload|debug-run}" >&2
123   exit 1
124   ;;
125 esac
126
127 exit 0