diff options
Diffstat (limited to 'debian/ngircd.init')
| -rw-r--r-- | debian/ngircd.init | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/debian/ngircd.init b/debian/ngircd.init new file mode 100644 index 00000000..8573026a --- /dev/null +++ b/debian/ngircd.init @@ -0,0 +1,71 @@ +#!/bin/sh +# +# ngIRCd start and stop script for Debian-based systems +# +# $Id: ngircd.init,v 1.1 2003/07/09 20:23:35 alex Exp $ +# + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/ngircd +NAME=ngIRCd +DESC="IRC daemon" +PARAMS="" + +test -x $DAEMON || exit 0 + +test -f /etc/default/ngircd && . /etc/default/ngircd + +Check_Config() +{ + $DAEMON --configtest >/dev/null 2>&1 + if [ $? -ne 0 ]; then + echo "Configuration of $NAME is not valide, won't (re)start!" + echo "Please run \"$DAEMON --configtest\" manually and fix it up ..." + exit 1 + fi +} + +Try_Start() +{ + start-stop-daemon --start --quiet --exec $DAEMON -- $PARAMS + if [ $? -ne 0 ]; then + echo "$NAME failed!" + exit 1 + fi + echo "$NAME." +} + +case "$1" in + start) + Check_Config + echo -n "Starting $DESC: " + Try_Start + ;; + stop) + echo -n "Stopping $DESC: " + start-stop-daemon --stop --quiet --exec $DAEMON \ + && echo "$NAME." \ + || echo "(none running)" + ;; + reload|force-reload) + Check_Config + echo "Reloading $DESC configuration files." + start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON + ;; + restart) + Check_Config + echo -n "Restarting $DESC: " + start-stop-daemon --stop --quiet --oknodo --exec $DAEMON + sleep 1 + Try_Start + ;; + *) + N=/etc/init.d/$NAME + echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 + +# -eof- |