forked from troglobit/smcroute
-
Notifications
You must be signed in to change notification settings - Fork 0
/
smcroute.init
executable file
·86 lines (78 loc) · 1.99 KB
/
smcroute.init
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#!/bin/sh
#
### BEGIN INIT INFO
# Provides: smcroute
# Required-Start: $syslog $local_fs $network $remote_fs
# Required-Stop: $syslog $local_fs $network $remote_fs
# Should-Start:
# Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Static multicast router daemon
# Description: SMCRoute is a daemon and command line tool to manipulate
# the multicast routing table of a UNIX kernel. It can be
# used as an alternative to dynamic multicast routers like
# pimd or mrouted in situations where static routes should
# be maintained and/or no proper IGMP signaling exists.
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/smcrouted
DAEMONCTL=/usr/sbin/smcroutectl
DAEMON_OPTS=
NAME=smcrouted
DESC="static multicast router daemon"
test -x $DAEMON || exit 0
# Include smcroute defaults if available
if [ -f /etc/default/smcroute ] ; then
. /etc/default/smcroute
fi
. /lib/lsb/init-functions
start() {
local error
local result
log_begin_msg "Starting $DESC: $NAME"
error=$(start-stop-daemon --start --quiet \
--exec $DAEMON -- $DAEMON_OPTS 2>&1)
result=$?
if [ "$result" = "0" -a -x /etc/smcroute/startup.sh ]; then
/etc/smcroute/startup.sh
else
log_progress_msg ${error#ERRO: }
fi
log_end_msg $result
}
stop() {
local error
local result
log_begin_msg "Stopping $DESC: $NAME"
error=$($DAEMONCTL kill 2>&1)
result=$?
log_progress_msg ${error#ERRO: }
log_end_msg $result
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|force-reload)
#
# If the "reload" option is implemented, move the "force-reload"
# option to the "reload" entry above. If not, "force-reload" is
# just the same as "restart".
#
stop
start
;;
status)
status_of_proc "$DAEMON" "$DESC" && exit 0 || exit $?
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0