diff options
Diffstat (limited to 'recipes-security/freediameter/files/init')
-rw-r--r-- | recipes-security/freediameter/files/init | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/recipes-security/freediameter/files/init b/recipes-security/freediameter/files/init deleted file mode 100644 index 7b2a31a..0000000 --- a/recipes-security/freediameter/files/init +++ /dev/null | |||
@@ -1,160 +0,0 @@ | |||
1 | #! /bin/sh | ||
2 | |||
3 | ### BEGIN INIT INFO | ||
4 | # Provides: freediameter | ||
5 | # Default-Start: 2 3 4 5 | ||
6 | # Default-Stop: 0 1 6 | ||
7 | # Required-Start: $remote_fs $syslog | ||
8 | # Required-Stop: $remote_fs $syslog | ||
9 | # Short-Description: Start freeDiameter daemon at boot time | ||
10 | # Description: Start the freeDiameter daemon at boot time. | ||
11 | # freeDiameter is an extensible implementation of the Diameter protocol, | ||
12 | # designed for Authentication, Authorization and Accounting. Diameter is | ||
13 | # an evolution of the RADIUS protocol. | ||
14 | ### END INIT INFO# | ||
15 | |||
16 | DAEMON=/usr/bin/freeDiameterd | ||
17 | CONF=/etc/freeDiameter/freeDiameter.conf | ||
18 | NAME=freediameter | ||
19 | DESC="freeDiameter daemon" | ||
20 | |||
21 | test -x $DAEMON || exit 0 | ||
22 | |||
23 | LOGDIR=/var/log/freediameter | ||
24 | PIDFILE=/var/run/$NAME.pid | ||
25 | DODTIME=30 # Time to wait for the server to die, in seconds | ||
26 | # The value is high because we wait for STA answers | ||
27 | # before disconnecting the peers. | ||
28 | |||
29 | # Include freediameter defaults if available | ||
30 | if [ -f /etc/default/freediameter ] ; then | ||
31 | . /etc/default/freediameter | ||
32 | fi | ||
33 | |||
34 | test x"" != x$DAEMON_OPTS || test -f $CONF || exit 0 | ||
35 | |||
36 | set -e | ||
37 | |||
38 | running_pid() | ||
39 | { | ||
40 | # Check if a given process pid's cmdline matches a given name | ||
41 | pid=$1 | ||
42 | name=$2 | ||
43 | [ -z "$pid" ] && return 1 | ||
44 | [ ! -d /proc/$pid ] && return 1 | ||
45 | cmd=`cat /proc/$pid/cmdline | tr "\000" "\n"|head -n 1 |cut -d : -f 1` | ||
46 | # Is this the expected child? | ||
47 | [ "$cmd" != "$name" ] && return 1 | ||
48 | return 0 | ||
49 | } | ||
50 | |||
51 | running() | ||
52 | { | ||
53 | # Check if the process is running looking at /proc | ||
54 | # (works for all users) | ||
55 | |||
56 | # No pidfile, probably no daemon present | ||
57 | [ ! -f "$PIDFILE" ] && return 1 | ||
58 | # Obtain the pid and check it against the binary name | ||
59 | pid=`cat $PIDFILE` | ||
60 | running_pid $pid $DAEMON || return 1 | ||
61 | return 0 | ||
62 | } | ||
63 | |||
64 | force_stop() { | ||
65 | # Forcefully kill the process | ||
66 | [ ! -f "$PIDFILE" ] && return | ||
67 | if running ; then | ||
68 | kill -15 $pid | ||
69 | # Is it really dead? | ||
70 | [ -n "$DODTIME" ] && sleep "$DODTIME"s | ||
71 | if running ; then | ||
72 | kill -9 $pid | ||
73 | [ -n "$DODTIME" ] && sleep "$DODTIME"s | ||
74 | if running ; then | ||
75 | echo "Cannot kill $LABEL (pid=$pid)!" | ||
76 | exit 1 | ||
77 | fi | ||
78 | fi | ||
79 | fi | ||
80 | rm -f $PIDFILE | ||
81 | return 0 | ||
82 | } | ||
83 | |||
84 | case "$1" in | ||
85 | start) | ||
86 | echo -n "Starting $DESC: " | ||
87 | start-stop-daemon --start --quiet --pidfile $PIDFILE \ | ||
88 | --exec $DAEMON -- $DAEMON_OPTS | ||
89 | if running ; then | ||
90 | echo "$NAME." | ||
91 | else | ||
92 | echo " ERROR." | ||
93 | fi | ||
94 | ;; | ||
95 | stop) | ||
96 | echo -n "Stopping $DESC: " | ||
97 | start-stop-daemon --stop --quiet --pidfile $PIDFILE \ | ||
98 | --exec $DAEMON | ||
99 | echo "$NAME." | ||
100 | ;; | ||
101 | force-stop) | ||
102 | echo -n "Forcefully stopping $DESC: " | ||
103 | force_stop | ||
104 | if ! running ; then | ||
105 | echo "$NAME." | ||
106 | else | ||
107 | echo " ERROR." | ||
108 | fi | ||
109 | ;; | ||
110 | #reload) | ||
111 | # | ||
112 | # If the daemon can reload its config files on the fly | ||
113 | # for example by sending it SIGHUP, do it here. | ||
114 | # | ||
115 | # If the daemon responds to changes in its config file | ||
116 | # directly anyway, make this a do-nothing entry. | ||
117 | # | ||
118 | # echo "Reloading $DESC configuration files." | ||
119 | # start-stop-daemon --stop --signal 1 --quiet --pidfile \ | ||
120 | # /var/run/$NAME.pid --exec $DAEMON | ||
121 | #;; | ||
122 | force-reload) | ||
123 | # | ||
124 | # If the "reload" option is implemented, move the "force-reload" | ||
125 | # option to the "reload" entry above. If not, "force-reload" is | ||
126 | # just the same as "restart" except that it does nothing if the | ||
127 | # daemon isn't already running. | ||
128 | # check wether $DAEMON is running. If so, restart | ||
129 | start-stop-daemon --stop --test --quiet --pidfile \ | ||
130 | /var/run/$NAME.pid --exec $DAEMON \ | ||
131 | && $0 restart \ | ||
132 | || exit 0 | ||
133 | ;; | ||
134 | restart) | ||
135 | echo -n "Restarting $DESC: " | ||
136 | start-stop-daemon --stop --quiet --pidfile \ | ||
137 | /var/run/$NAME.pid --exec $DAEMON | ||
138 | [ -n "$DODTIME" ] && sleep $DODTIME | ||
139 | start-stop-daemon --start --quiet --pidfile \ | ||
140 | /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS | ||
141 | echo "$NAME." | ||
142 | ;; | ||
143 | status) | ||
144 | echo -n "$LABEL is " | ||
145 | if running ; then | ||
146 | echo "running" | ||
147 | else | ||
148 | echo " not running." | ||
149 | exit 1 | ||
150 | fi | ||
151 | ;; | ||
152 | *) | ||
153 | N=/etc/init.d/$NAME | ||
154 | # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 | ||
155 | echo "Usage: $N {start|stop|restart|force-reload|status|force-stop}" >&2 | ||
156 | exit 1 | ||
157 | ;; | ||
158 | esac | ||
159 | |||
160 | exit 0 | ||