diff options
Diffstat (limited to 'net-mail/dovecot/files/dovecot-1.2.init')
-rw-r--r-- | net-mail/dovecot/files/dovecot-1.2.init | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/net-mail/dovecot/files/dovecot-1.2.init b/net-mail/dovecot/files/dovecot-1.2.init new file mode 100644 index 0000000..b9dd672 --- /dev/null +++ b/net-mail/dovecot/files/dovecot-1.2.init @@ -0,0 +1,61 @@ +#!/sbin/runscript +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later +# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/files/dovecot-1.2.init,v 1.2 2011/08/05 07:05:46 eras Exp $ + +opts="${opts} reload" + +depend() { + need localmount net + before postfix + after bootmisc ldap mysql ntp-client ntpd postgresql saslauthd slapd + use logger +} + +checkconfig() { + DOVECOT_INSTANCE=${SVCNAME##*.} + if [ -n "${DOVECOT_INSTANCE}" -a "${SVCNAME}" != "dovecot" ]; then + DOVECOT_CONF=/etc/dovecot/dovecot.${DOVECOT_INSTANCE}.conf + else + DOVECOT_CONF=/etc/dovecot/dovecot.conf + fi + if [ ! -e ${DOVECOT_CONF} ]; then + eerror "You will need an ${DOVECOT_CONF} first" + return 1 + fi + if [ -x /usr/sbin/dovecot ]; then + DOVECOT_BASEDIR=$(/usr/sbin/dovecot -c ${DOVECOT_CONF} -a | grep '^base_dir: ' | sed 's/^base_dir: //') + else + eerror "dovecot not executable" + return 1 + fi + DOVECOT_BASEDIR=${DOVECOT_BASEDIR:-/var/run/dovecot} + DOVECOT_PIDFILE=${DOVECOT_BASEDIR}/master.pid + if [ ! -d "${DOVECOT_BASEDIR}" ]; then + install -d -o root -g root -m 0755 "${DOVECOT_BASEDIR}" + fi +} + +start() { + checkconfig || return 1 + ebegin "Starting ${SVCNAME}" + start-stop-daemon --start --exec /usr/sbin/dovecot \ + --pidfile "${DOVECOT_PIDFILE}" -- -c "${DOVECOT_CONF}" + eend $? +} + +stop() { + checkconfig || return 1 + ebegin "Stopping ${SVCNAME}" + start-stop-daemon --stop --exec /usr/sbin/dovecot \ + --pidfile "${DOVECOT_PIDFILE}" + eend $? +} + +reload() { + checkconfig || return 1 + ebegin "Reloading ${SVCNAME} configs and restarting auth/login processes" + start-stop-daemon --signal HUP --exec /usr/sbin/dovecot \ + --pidfile "${DOVECOT_PIDFILE}" + eend $? +} |