diff options
Diffstat (limited to 'pcr/inspircd/inspircd.rcd')
-rw-r--r-- | pcr/inspircd/inspircd.rcd | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/pcr/inspircd/inspircd.rcd b/pcr/inspircd/inspircd.rcd new file mode 100644 index 000000000..5dbd8198e --- /dev/null +++ b/pcr/inspircd/inspircd.rcd @@ -0,0 +1,54 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +get_pid() { + pidof /usr/sbin/inspircd +} + +case "$1" in + start) + stat_busy "Starting inspircd" + PID=$(get_pid) + if [ -z "$PID" ]; then + su -s /bin/sh -c '/usr/sbin/inspircd --logfile /var/log/inspircd/startup.log --config /etc/inspircd/inspircd.conf' 'inspircd' > /dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + add_daemon inspircd + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping inspircd" + PID=$(get_pid) + [ ! -z "$PID" ] && kill $PID + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm_daemon inspircd + stat_done + fi + ;; + + restart) + $0 stop + $0 start + ;; + + rehash|reload) + kill -HUP $(get_pid) + ;; + + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 |