#!/bin/bash
#
# /etc/init.d/qmail : start or stop the qmail mail subsystem.
#

case "$1" in

  start)
    echo "Starting mail-transfer-agent: qmail"
    if svok /service/qmail ; then
      svc -u /service/qmail
      svc -u /service/qmail/log
    else
      echo qmail supervise not running
    fi
    if svok /service/qmail-pop3 ; then
      svc -u /service/qmail-pop3
      svc -u /service/qmail-pop3/log
    else
      echo qmail-pop3 supervise not running
    fi
    if svok /service/qmail-smtp ; then
      svc -u /service/qmail-smtp
      svc -u /service/qmail-smtp/log
    else
      echo qmail-smtp supervise not running
    fi
    if [ -d /var/lock/subsys ]; then
      touch /var/lock/subsys/qmail
    fi
    ;;

  stop)
    echo "Stopping mail-transfer-agent: qmail"
    svc -d /service/qmail-pop3
    svc -d /service/qmail-pop3/log
    svc -d /service/qmail-smtp
    svc -d /service/qmail-smtp/log
    svc -d /service/qmail
    svc -d /service/qmail/log
    if [ -f /var/lock/subsys/qmail ]; then
      rm /var/lock/subsys/qmail
    fi
    ;;

  restart)
    $0 stop
    $0 start
    ;;

  queue)
    qmail-qstat
    qmail-qread
    ;;

  stat)
    svstat /service/qmail
    svstat /service/qmail/log
    svstat /service/qmail-pop3
    svstat /service/qmail-pop3/log
    svstat /service/qmail-smtp
    svstat /service/qmail-smtp/log
    qmail-qstat
    ;;

  help)
    cat <<HELP
  start -- starts mail service (qmail, qmail-pop3, qmail-smtp)
   stop -- stops mail service (qmail, qmail-pop3, qmail-smtp)
restart -- stops and restarts mail service (qmail, qmail-pop3, qmail-smtp)
  queue -- shows status of queue
   stat -- displays status of mail service
HELP
    ;;
  *)
    echo "Usage: $0 {start|stop|restart|queue|stat|help}"
    exit 1
    ;;
esac

exit 0