summaryrefslogtreecommitdiff
path: root/mail/prayer
diff options
context:
space:
mode:
authorheinz <heinz@pkgsrc.org>2004-02-28 23:59:47 +0000
committerheinz <heinz@pkgsrc.org>2004-02-28 23:59:47 +0000
commit0344682f752430059bf0033d4cd7504179b942cb (patch)
treea5fd78765bfd24e8f51c88e80ebb22b705c7498f /mail/prayer
parentf439c20604c9b0f8d9e90e41b2ba390e6ddf5bea (diff)
downloadpkgsrc-0344682f752430059bf0033d4cd7504179b942cb.tar.gz
Add RCD script.
Diffstat (limited to 'mail/prayer')
-rwxr-xr-xmail/prayer/files/prayer.rc118
1 files changed, 118 insertions, 0 deletions
diff --git a/mail/prayer/files/prayer.rc b/mail/prayer/files/prayer.rc
new file mode 100755
index 00000000000..c1f435520a5
--- /dev/null
+++ b/mail/prayer/files/prayer.rc
@@ -0,0 +1,118 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: prayer.rc,v 1.1 2004/02/28 23:59:47 heinz Exp $
+#
+# This shell script takes care of starting and stopping prayer,
+# a program providing web access to a mail server using IMAP
+#
+
+## only for NetBSD
+# PROVIDE: prayer
+# REQUIRE: LOGIN
+# AFTER: mail
+# KEYWORD: shutdown
+##
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin:@PREFIX@/sbin
+export PATH
+
+if [ -f /etc/rc.subr ]
+then
+ . /etc/rc.subr
+fi
+
+name="prayer"
+rcvar=$name
+command="@PREFIX@/sbin/prayer"
+command_args=""
+pidfile="@VAR_PREFIX@/pid/prayer"
+
+prayer_flags=${prayer_flags-""}
+OPSYS=@OPSYS@
+
+get_prayer_pid()
+{
+ if [ -f ${pidfile} ]; then
+ prayer_pid=`head -1 ${pidfile}`
+ if ps -p ${prayer_pid} | fgrep ${name} >/dev/null; then
+ :
+ else
+ prayer_pid=
+ fi
+ else
+ prayer_pid=
+ fi
+
+}
+
+prayer_start()
+{
+ get_prayer_pid
+
+ if [ -n "${prayer_pid}" ]; then
+ echo "${command} already running as pid ${prayer_pid}."
+ return 1
+ fi
+ echo "Starting ${name}"
+ ${command} ${prayer_flags} ${command_args}
+}
+
+prayer_stop()
+{
+ get_prayer_pid
+
+ if [ -z "${prayer_pid}" ]; then
+ echo "${command} not running? (check ${pidfile})."
+ return 1
+ fi
+ echo "Stopping ${name}"
+ kill -HUP ${prayer_pid}
+ prayer_session_pid=`cat @VAR_PREFIX@/pid/prayer-session`
+ if [ -n "${prayer_session_pid}" ]; then
+ if ps -p ${prayer_session_pid} | fgrep ${name} >/dev/null; then
+ kill -HUP ${prayer_session_pid}
+ fi
+ fi
+
+ slaves=`ps -U prayer| cut -d' ' -f1`; kill -HUP $slaves
+
+}
+prayer_status()
+{
+ get_prayer_pid
+
+ if [ -z "${prayer_pid}" ]; then
+ echo "${command} is not running? (check ${pidfile})."
+ else
+ echo "${command} is running as pid ${prayer_pid}."
+ fi
+}
+
+if [ "${OPSYS}" = "NetBSD" ]; then
+
+ stop_cmd=prayer_stop
+
+ load_rc_config $name
+ run_rc_command "$1"
+
+else # not NetBSD
+ case ${1+"$@"} in
+ start)
+ prayer_start
+ ;;
+ stop)
+ prayer_stop
+ ;;
+ restart)
+ prayer_stop
+ sleep 2
+ prayer_start
+ ;;
+ status)
+ prayer_status
+ ;;
+ *)
+ echo "Usage: ${0} (start|stop|restart|status)"
+ ;;
+ esac
+fi