import from HEAD:
[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 # Short-Description: Radius Daemon 
12 # Description:       Extensible, configurable radius daemon
13 ### END INIT INFO
14
15 PROG="freeradius"
16 PROGRAM="/usr/sbin/freeradius"
17 PIDFILE="/var/run/freeradius/freeradius.pid"
18 DESCR="FreeRADIUS daemon"
19
20 test -f $PROGRAM || exit 0
21
22 # /var/run may be a tmpfs
23 if [ ! -d /var/run/freeradius ]; then
24         install -o freerad -g freerad -m 0755 -d /var/run/freeradius
25         if [ $? -ne 0 ]; then
26                 echo "Error creating the /var/run/freeradius directory."
27                 exit 1
28         fi
29 fi
30
31 case "$1" in
32         start)
33                 echo -n "Starting $DESCR: "
34                 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $PROGRAM
35                 if [ $? -eq 0 ]; then
36                         echo "$PROG."
37                 else
38                         echo "(failed!  run '$PROGRAM -x' to find out why.)"
39                         exit 1
40                 fi
41                 ;;
42         stop)
43                 echo -n "Stopping $DESCR: "
44                 start-stop-daemon --stop --retry=TERM/30/KILL/5 --oknodo --quiet --pidfile $PIDFILE
45                 echo "$PROG."
46                 ;;
47         restart)
48                 echo "Restarting $DESCR..."
49                 $0 stop
50                 $0 start
51                 ;;
52         reload | force-reload)
53                 echo -n "Reloading configuration files for $DESCR"
54                 start-stop-daemon --stop --signal 1 --oknodo --quiet --pidfile $PIDFILE
55                 sleep 2
56                 [ -r $PIDFILE ] && kill -0 $(cat $PIDFILE) > /dev/null 2>&1
57                 if [ $? -eq 0 ]; then
58                         echo "."
59                 else
60                         echo " failed! ($PROG has died)"
61                         exit 1
62                 fi
63                 ;;
64         *)
65                 echo "Usage: $0 start|stop|restart|reload|force-reload"
66                 exit 1
67                 ;;
68 esac
69
70 exit 0