]> git.pld-linux.org Git - packages/freeradius-server.git/blob - freeradius-server.init
- fix return status of 'service freeradius-server status'
[packages/freeradius-server.git] / freeradius-server.init
1 #!/bin/sh
2 #
3 # chkconfig:    345 88 12
4 # description:  Start/Stop the RADIUS server daemon
5 #
6 #    This program is free software; you can redistribute it and/or modify
7 #    it under the terms of the GNU General Public License as published by
8 #    the Free Software Foundation; either version 2 of the License, or
9 #    (at your option) any later version.
10 #
11 #    This program is distributed in the hope that it will be useful,
12 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 #    GNU General Public License for more details.
15 #
16 #    You should have received a copy of the GNU General Public License
17 #    along with this program; if not, write to the Free Software
18 #    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19 #
20 #    Copyright (C) 2001 The FreeRADIUS Project   http://www.freeradius.org
21 #
22
23 # Source function library.
24 . /etc/rc.d/init.d/functions
25
26 [ -f /etc/raddb/radiusd.conf ] || exit 0
27
28 checkconfig() {
29         run_cmd "Checking RADIUS configuration " /usr/sbin/radiusd -C || exit 1
30 }
31
32 start() {
33         # Check if the service is already running?
34         if [ ! -f /var/lock/subsys/freeradius ]; then
35                 msg_starting RADIUS
36                 daemon /usr/sbin/radiusd
37                 RETVAL=$?
38                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/freeradius
39         else
40                 msg_already_running RADIUS
41         fi
42 }
43
44 stop() {
45         # Stop daemons.
46         if [ -f /var/lock/subsys/freeradius ]; then
47                 msg_stopping RADIUS
48                 killproc /usr/sbin/radiusd
49                 rm -f /var/lock/subsys/freeradius > /dev/null 2>&1
50         else
51                 msg_not_running RADIUS
52         fi
53 }
54
55 RETVAL=0
56 case "$1" in
57   start)
58         start
59         ;;
60   stop)
61         stop
62         ;;
63   status)
64         status radiusd
65         retvar=$?
66         checkconfig
67         exit $retvar
68         ;;
69   reload|force-reload)
70         if [ -f /var/lock/subsys/freeradius ]; then
71                 checkconfig
72                 msg_reloading RADIUS
73                 killproc /usr/sbin/radiusd -HUP
74                 RETVAL=$?
75         else
76                 msg_not_running RADIUS
77                 exit 7
78         fi
79         ;;
80   restart)
81         checkconfig
82         stop
83         sleep 3
84         start
85         ;;
86   try-restart)
87         if [ -f /var/lock/subsys/freeradius ]; then
88                 checkconfig
89                 stop
90                 sleep 3
91                 start
92         fi
93         ;;
94   *)
95         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
96         exit 3
97 esac
98
99 exit $RETVAL
This page took 0.108006 seconds and 3 git commands to generate.