import from branch_1_1:
[freeradius.git] / debian / freeradius.init
1 #!/bin/sh
2 # Start/stop the FreeRADIUS daemon.
3
4 ### BEGIN INIT INFO
5 # Provides:          radiusd
6 # Required-Start:    $network
7 # Should-Start:      $time mysql ldap postgresql samba krb5-kdc
8 # Required-Stop:
9 # Default-Start:     2 3 4 5
10 # Default-Stop:      0 1 6
11 ### END INIT INFO
12
13 PROG="freeradius"
14 PROGRAM="/usr/sbin/freeradius"
15 PIDFILE="/var/run/freeradius/freeradius.pid"
16 DESCR="FreeRADIUS daemon"
17
18 test -f $PROGRAM || exit 0
19
20 # /var/run may be a tmpfs
21 if [ ! -d /var/run/freeradius ]; then
22         install -o freerad -g freerad -m 0755 -d /var/run/freeradius
23         if [ $? -ne 0 ]; then
24                 echo "Error creating the /var/run/freeradius directory."
25                 exit 1
26         fi
27 fi
28
29 case "$1" in
30         start)
31                 echo -n "Starting $DESCR: "
32                 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $PROGRAM
33                 if [ $? -eq 0 ]; then
34                         echo "$PROG."
35                 else
36                         echo "(failed!  run '$PROGRAM -x' to find out why.)"
37                         exit 1
38                 fi
39                 ;;
40         stop)
41                 echo -n "Stopping $DESCR: "
42                 start-stop-daemon --stop --retry=TERM/30/KILL/5 --oknodo --quiet --pidfile $PIDFILE
43                 echo "$PROG."
44                 ;;
45         restart)
46                 echo "Restarting $DESCR..."
47                 $0 stop
48                 $0 start
49                 ;;
50         reload | force-reload)
51                 echo -n "Reloading configuration files for $DESCR"
52                 start-stop-daemon --stop --signal 1 --oknodo --quiet --pidfile $PIDFILE
53                 sleep 2
54                 [ -r $PIDFILE ] && kill -0 $(cat $PIDFILE) > /dev/null 2>&1
55                 if [ $? -eq 0 ]; then
56                         echo "."
57                 else
58                         echo " failed! ($PROG has died)"
59                         exit 1
60                 fi
61                 ;;
62         *)
63                 echo "Usage: $0 start|stop|restart|reload|force-reload"
64                 exit 1
65                 ;;
66 esac
67
68 exit 0