#!/bin/sh
#
# imapd     
#
# chkconfig: 2345 48 30
# description: mail-httpd - HTTP Daemon.
# processname: mail-httpd
# config: /opt/nec/mail/mail.conf


mails_stop() {
  cd /var/run/mail-httpd
  found=0
  for pid in * ; do
    if [ $pid != "*" ]; then
      if [ -f /proc/$pid/cmdline ]; then
        cmd=`cat /proc/$pid/status | head -1 | awk '{ print $2 }'`
        if [ $cmd == "mail-httpd" ]; then
          kill $pid
          /opt/nec/mail/mkill $pid
          found=1
        else
          rm -f $pid
        fi
      else
        rm -f $pid
      fi
    fi
  done
  if [ $found == 1 ]; then
    echo -n " mail-httpd"
  fi
}

mails_stop_internal() {
  cd /var/run/mail-httpd
  for pid in * ; do
    if [ $pid != "*" ]; then
      if [ -f /proc/$pid/cmdline ]; then
        cmd=`cat /proc/$pid/status | head -1 | awk '{ print $2 }'`
        if [ $cmd == "mail-httpd" ]; then
          kill $pid
          /opt/nec/mail/mkill $pid
        else
          rm -f $pid
        fi
      else
        rm -f $pid
      fi
    fi
  done
}


mails_start() {
  mails_stop_internal
  /opt/nec/mail/mail-httpd
  echo -n " mail-httpd"
}

# See how we were called.
case "$1" in
  start)
    echo -n "Starting mail-httpd:"
    mails_start
    echo
    touch /var/lock/subsys/mail-httpd
    ;;
  stop)
    echo -n "Shutting down mail-httpd:"
    mails_stop
    echo
    rm -f /var/lock/subsys/mail-httpd
    ;;
  status)
    cd /var/run/mail-httpd
    for pid in * ; do
    	if [ $pid == "*" ]; then
    		echo "mail-httpd is stopped"
    		exit 0;
    	fi
    	if [ -f /proc/$pid/cmdline ]; then
	        cmd=`cat /proc/$pid/status | head -1 | awk '{ print $2 }'`
    		if [ $cmd != "mail-httpd" ]; then
    			rm -f $pid
    		fi
    	else
    		rm -f $pid
    	fi
    done
    imappid=""
    for pid in * ; do
    	if [ $pid == "*" ]; then
    		echo "mail-httpd is stopped"
    		exit 0;
    	fi
    	if [ "$imappid" == "" ]; then
    		imappid=$pid
    	else
    		imappid=`echo -n "$imappid $pid"`
    	fi
    done
    echo "mail-httpd (pid $imappid) is running..."
    ;;
  restart)
    $0 stop
    $0 start
    ;;
  reload)
    echo -n "Reloading mail-httpd:"
    mails_start
    echo
    ;;
  *)
    echo "Usage: $0 {start|stop|restart}"
    exit 1
esac

exit 0
