#!/bin/sh
# Start/stop/restart the dkimproxy daemon:

PIDFILEOUT=/var/run/dkimproxy/dkimproxyout.pid
PIDFILEIN=/var/run/dkimproxy/dkimproxyin.pid

dkim_start() {
  if [ -x /usr/local/dkimproxy/bin/dkimproxy.out ]; then
#    if ! ps axc | grep -q dkimproxy.out ; then
#    fi
    echo "Starting DKIM proxy OUT daemon:  /usr/local/dkimproxy/bin/dkimproxy.out --daemonized"
    /usr/local/dkimproxy/bin/dkimproxy.out --user=dkim --group=dkim --conf_file=/usr/local/dkimproxy/etc/dkimproxy_out.conf --daemonize --pidfile=/var/run/dkimproxy/dkimproxyout.pid --sender_map=/usr/local/dkimproxy/etc/sender_map.conf 
  fi
  if [ -x /usr/local/dkimproxy/bin/dkimproxy.in ]; then
    echo "Starting DKIM proxy IN daemon: /usr/local/dkimproxy/bin/dkimproxy.in --daemonized"
    /usr/local/dkimproxy/bin/dkimproxy.in --conf_file=/usr/local/dkimproxy/etc/dkimproxy_in.conf --user=dkim --group=dkim --pidfile=/var/run/dkimproxy/dkimproxyin.pid --daemonize
  fi
}

dkim_stop() {
  if [ -e "$PIDFILEOUT" ]; then
    kill $(cat $PIDFILEOUT)
    rm -f $PIDFILEOUT
  fi
  if [ -e "$PIDFILEIN" ]; then
    kill $(cat $PIDFILEIN)
    rm -f $PIDFILEIN
  fi
  # Just in case:
  killall dkimproxy 1> /dev/null 2> /dev/null
}

# See how we were called.
case "$1" in
    start)
        dkim_start
        ;;
    stop)
        dkim_stop
        ;;
    restart)
        dkim_stop
	sleep 1
        dkim_start
        ;;
    *)
        echo $"Usage: $0 {start|stop|restart}"
        ;;
esac

