c9ace8
#!/bin/bash
c9ace8
#
c9ace8
#	/etc/rc.d/init.d/dovecot
c9ace8
#
c9ace8
# Starts the dovecot daemon
c9ace8
#
c9ace8
# chkconfig: - 65 35
c9ace8
# description: Dovecot Imap Server
c9ace8
# processname: dovecot
c9ace8
# config: /etc/dovecot.conf
c9ace8
# config: /etc/sysconfig/dovecot
c9ace8
# pidfile: /var/run/dovecot/master.pid
c9ace8
c9ace8
### BEGIN INIT INFO
c9ace8
# Provides: dovecot
c9ace8
# Required-Start: $local_fs $network
c9ace8
# Required-Stop: $local_fs $network
c9ace8
# Should-Start: $remote_fs
c9ace8
# Should-Stop: $remote_fs
c9ace8
# Default-Start: 
c9ace8
# Default-Stop: 0 1 2 3 4 5 6
c9ace8
# Short-Description: start and stop Dovecot Imap server
c9ace8
# Description: Dovecot is an IMAP server for Linux/UNIX-like systems,
c9ace8
#              written with security primarily in mind.  It also contains
c9ace8
#              a small POP3 server.
c9ace8
### END INIT INFO
c9ace8
c9ace8
# Source function library.
c9ace8
. /etc/init.d/functions
c9ace8
c9ace8
if [ -f /etc/sysconfig/dovecot -a $UID -eq 0 ]; then
c9ace8
    . /etc/sysconfig/dovecot
c9ace8
fi
c9ace8
c9ace8
RETVAL=0
c9ace8
prog="Dovecot Imap"
c9ace8
exec="/usr/sbin/dovecot"
c9ace8
config="/etc/dovecot/dovecot.conf"
c9ace8
pidfile="/var/run/dovecot/master.pid"
c9ace8
lockfile="/var/lock/subsys/dovecot"
c9ace8
c9ace8
start() {
c9ace8
	[ $UID -eq 0 ] || exit 4
c9ace8
	[ -x $exec ] || exit 5
c9ace8
	[ -f $config ] || exit 6
c9ace8
c9ace8
        echo -n $"Starting $prog: "
c9ace8
	daemon --pidfile $pidfile $exec $OPTIONS
c9ace8
	RETVAL=$?
c9ace8
	[ $RETVAL -eq 0 ] && touch  $lockfile
c9ace8
	echo
c9ace8
}
c9ace8
c9ace8
stop() {
c9ace8
	[ $UID -eq 0 ] || exit 4
c9ace8
	echo -n $"Stopping $prog: "
c9ace8
	killproc -p $pidfile $exec
c9ace8
	RETVAL=$?
c9ace8
	[ $RETVAL -eq 0 ] && rm -f $lockfile
c9ace8
	echo
c9ace8
}
c9ace8
c9ace8
reload() {
c9ace8
	[ $UID -eq 0 ] || exit 4
c9ace8
	echo -n $"Reloading $prog: "
c9ace8
	killproc -p $pidfile $exec -HUP
c9ace8
	RETVAL=$?
c9ace8
	echo
c9ace8
}
c9ace8
c9ace8
#
c9ace8
#	See how we were called.
c9ace8
#
c9ace8
case "$1" in
c9ace8
  start)
c9ace8
	start
c9ace8
	;;
c9ace8
  stop)
c9ace8
	stop
c9ace8
	;;
c9ace8
  reload)
c9ace8
	reload
c9ace8
	;;
c9ace8
  force-reload|restart)
c9ace8
	stop
c9ace8
	sleep 1
c9ace8
	start
c9ace8
	RETVAL=$?
c9ace8
	;;
c9ace8
  condrestart|try-restart)
c9ace8
	if [ -f $lockfile ]; then
c9ace8
	    stop
c9ace8
	    sleep 3
c9ace8
	    start
c9ace8
	fi
c9ace8
	;;
c9ace8
  status)
c9ace8
	status -p $pidfile $exec
c9ace8
	RETVAL=$?
c9ace8
	;;
c9ace8
  *)
c9ace8
	echo $"Usage: $0 {condrestart|try-restart|start|stop|restart|reload|force-reload|status}"
c9ace8
	RETVAL=2
c9ace8
	[ "$1" = 'usage' ] && RETVAL=0
c9ace8
esac
c9ace8
c9ace8
exit $RETVAL
c9ace8