#!/bin/sh # # Author: Piotr Meyer # simple script to manage perdition instances via monit # based on original one by Simon Horman usage() { echo "Usage: /etc/init.d/$NAME {start|stop|reload|force-reload} {pop3|pop3s|imap4|imaps|managesieve} " } PATH=/usr/sbin:/bin:/usr/bin:/sbin:/usr/sbin NAME=perdition DAEMON=/usr/sbin/perdition test -f $DAEMON || exit 0 if [ -e /etc/default/perdition ]; then . /etc/default/perdition fi COMMON_FLAGS="${FLAGS:=}" POP3_FLAGS="${POP3_FLAGS:=}" POP3S_FLAGS="${POP3S_FLAGS:=}" IMAP4_FLAGS="${IMAP4_FLAGS:=}" IMAP4S_FLAGS="${IMAP4S_FLAGS:=}" MANAGESIEVE_FLAGS="${MANAGESIEVE_FLAGS:=}" service=${2} case ${service} in pop3) SERVICE_FLAGS=${POP3_FLAGS:=} ;; pop3s) SERVICE_FLAGS=${POP3S_FLAGS:=} ;; imap4) SERVICE_FLAGS=${IMAP4_FLAGS:=} ;; imaps) SERVICE_FLAGS=${IMAP4S_FLAGS:=} ;; managesieve) SERVICE_FLAGS=${MANAGESIEVE_FLAGS:=} ;; *) usage; exit 1 ;; esac pidfile="/var/run/perdition.${service}.pid" case "$1" in start) start-stop-daemon --start --verbose \ --pidfile ${pidfile} \ --exec /usr/sbin/perdition.${service} -- $COMMON_FLAGS $SERVICE_FLAGS --pid_file ${pidfile} ;; stop) start-stop-daemon --stop --verbose \ --pidfile ${pidfile} \ --exec /usr/sbin/perdition.${service} ;; force-reload|reload) echo "Reloading $NAME ($service) configuration files" start-stop-daemon --stop --signal 1 --quiet \ --pidfile ${pidfile} \ --exec /usr/sbin/perdition.${service} ;; *) usage exit 1 ;; esac exit 0