#!/bin/bash
#
# chkconfig: 345 15 85
# description: This startup script launches the courier pops daemon

### BEGIN INIT INFO
# Provides: courier-pop3d-ssl
# Required-Start: courier-authdaemon
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 345
# Short-Description: Courier pops daemon
# Description: This startup script launches the courier pops daemon
### END INIT INFO

# Source function library.
. /etc/rc.d/init.d/functions

# Source courier pop3d and pop3dl-ssl configuration
. /etc/courier/pop3d
. /etc/courier/pop3d-ssl

NAME=courier-pop3d-ssl
WRAPPER=courierlogger
PROGRAM=/usr/lib/courier-imap/couriertcpd
LOCKFILE=/var/lock/subsys/courier-pop3d-ssl

start() {
    # Check if it is already running
    if [ ! -f $LOCKFILE ]; then
	gprintf "Starting %s" "$NAME"
	umask $IMAP_UMASK
	ulimit -v $IMAP_ULIMITD
	export PROXY_HOSTNAME=$PROXY_HOSTNAME
	export POP3_TLS=1;
	export POP3_STARTTLS=NO;
	export POP3_TLS_REQUIRED=0;
	daemon $WRAPPER -pid=$SSLPIDFILE -start \
	    $SSLLOGGEROPTS \
	    $PROGRAM \
	    -address=$ADDRESS \
	    -maxprocs=$MAXDAEMONS \
	    -maxperip=$MAXPERIP \
	    $TCPDOPTS \
	    $SSLPORT \
	    $COURIERTLS -server -tcpd \
	    /usr/sbin/pop3login \
	    /usr/bin/pop3d \
	    $MAILDIRPATH
	RETVAL=$?
	[ $RETVAL -eq 0 ] && touch $LOCKFILE
	echo
    fi
    return $RETVAL
}

stop() {
    gprintf "Stopping %s" "$NAME"
    daemon $WRAPPER -pid=$SSLPIDFILE -stop
    RETVAL=$?
    [ $RETVAL -eq 0 ] && rm -f $LOCKFILE
    echo
    return $RETVAL
}

reload() {
    gprintf "Reloading %s" "$NAME"
    daemon $WRAPPER -pid=$SSLPIDFILE -restart
    RETVAL=$?
    echo
    return $RETVAL
}

# See how we were called.
case "$1" in
    start)
	start
	;;
    stop)
	stop
	;;
    restart)
	stop
	start
	;;
    condrestart)
	if [ -f $LOCKFILE ]; then
	    start
	    stop
	fi
	;;
    reload)
	reload
	;;
    status)
	status $PROGRAM
	;;
    *)
	gprintf "Usage: %s {start|stop|restart|condrestart|reload|status}\n" "$0"
	exit 1
esac

exit $RETVAL
