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