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