]>
Commit | Line | Data |
---|---|---|
cddf944e ER |
1 | #!/bin/sh |
2 | # | |
3 | # Startup script for the BNC | |
4 | # | |
5 | # chkconfig: 2345 81 45 | |
6 | # description: BNC is an IRC (Internet Relay Chat) proxying server | |
7 | # processname: bnc | |
8 | # config: /etc/bnc | |
9 | ||
10 | # Set some frequently user variables | |
11 | SERVICE=bnc | |
12 | LOCKFILE=/var/lock/subsys/$SERVICE | |
13 | MSG=$SERVICE | |
14 | PROG=$SERVICE | |
15 | PIDFILE=/var/run/$SERVICE/$SERVICE.pid | |
16 | ||
17 | # Source funtion library | |
18 | . /etc/rc.d/init.d/functions | |
19 | ||
20 | # Get network config | |
21 | . /etc/sysconfig/network | |
22 | ||
23 | # Check that networking is up | |
24 | if is_yes "${NETWORKING}"; then | |
25 | if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then | |
26 | msg_network_down $MSG | |
27 | exit 1 | |
28 | fi | |
29 | else | |
30 | exit 0 | |
31 | fi | |
32 | ||
33 | # Get service config | |
34 | [ -f "/etc/sysconfig/$SERVICE" ] && . "/etc/sysconfig/$SERVICE" | |
35 | ||
36 | RETVAL=0 | |
37 | # See how we were called. | |
38 | case "$1" in | |
39 | start) | |
40 | if [ ! -f "$LOCKFILE" ]; then | |
41 | # create the log | |
42 | if [ ! -f /var/log/bnc.log ]; then | |
43 | touch /var/log/bnc.log | |
44 | chown bnc:bnc /var/log/bnc.log | |
45 | chmod 640 /var/log/bnc.log | |
46 | fi | |
47 | ||
48 | msg_starting "$MSG" | |
49 | start-stop-daemon --start --pidfile $PIDFILE --chuid bnc \ | |
50 | --chdir /etc/bnc --exec /usr/bin/bnc -- bnc.conf > /dev/null | |
51 | # take or leave it, but rc=7 is successful exit code in bnc | |
52 | [ $RETVAL = 7 ] && RETVAL=0 | |
53 | ||
54 | if [ $RETVAL -eq 0 ]; then | |
55 | touch $LOCKFILE | |
56 | ok | |
57 | else | |
58 | fail | |
59 | fi | |
60 | else | |
61 | msg_already_running $MSG | |
62 | fi | |
63 | ;; | |
64 | stop) | |
65 | if [ -f "$LOCKFILE" ]; then | |
66 | msg_stopping "$MSG" | |
67 | if start-stop-daemon --stop --oknodo --pidfile $PIDFILE; then | |
68 | rm -f $PIDFILE $LOCKFILE >/dev/null 2>&1 | |
69 | ok | |
70 | else | |
71 | fail | |
72 | fi | |
73 | else | |
74 | msg_not_running "$MSG" | |
75 | fi | |
76 | ;; | |
77 | status) | |
78 | status $PROG | |
79 | exit $? | |
80 | ;; | |
81 | restart|force-reload) | |
82 | $0 stop | |
83 | $0 start | |
84 | exit $? | |
85 | ;; | |
86 | *) | |
87 | msg_usage "$0 {start|stop|restart|force-reload|status}" | |
88 | exit 3 | |
89 | esac | |
90 | ||
91 | exit $RETVAL |