]> git.pld-linux.org Git - packages/bnc.git/blob - bnc.init
- tabs in preamble
[packages/bnc.git] / bnc.init
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                 RETVAL=$?
52                 # take or leave it, but rc=7 is successful exit code in bnc
53                 [ $RETVAL = 7 ] && RETVAL=0
54
55                 if [ $RETVAL -eq 0 ]; then
56                         touch $LOCKFILE
57                         ok
58                 else
59                         fail
60                 fi
61         else
62                 msg_already_running $MSG
63         fi
64         ;;
65   stop)
66         if [ -f "$LOCKFILE" ]; then
67                 msg_stopping "$MSG"
68                 if start-stop-daemon --stop --oknodo --pidfile $PIDFILE; then
69                         rm -f $PIDFILE $LOCKFILE >/dev/null 2>&1
70                         ok
71                 else
72                         fail
73                 fi
74         else
75                 msg_not_running "$MSG"
76         fi
77         ;;
78   status)
79         status $PROG
80         exit $?
81         ;;
82   restart|force-reload)
83         $0 stop
84         $0 start
85         exit $?
86         ;;
87   *)
88         msg_usage "$0 {start|stop|restart|force-reload|status}"
89         exit 3
90 esac
91
92 exit $RETVAL
This page took 0.072844 seconds and 3 git commands to generate.