slackbuilds_ponce/network/dkimproxy/rc.dkimproxy
Steven King 38db967d63 network/dkimproxy: Added (SMTP-proxy).
Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
2013-12-06 00:00:08 -06:00

156 lines
3.5 KiB
Bash

#!/bin/sh
#
# Copyright (c) 2005-2007 Messiah College.
#
### BEGIN INIT INFO
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Description: Runs dkimproxy
### END INIT INFO
### BEGIN CONFIGURABLE BITS
DKIMPROXYDIR=/usr
DKIMPROXYUSER=dkim
DKIMPROXYGROUP=dkim
### END CONFIGURABLE BITS
### IF YOU MOVE THE CONFIG FILES, CHANGE THIS:
DKIMPROXY_IN_CFG="/etc/dkimproxy/dkimproxy_in.conf"
DKIMPROXY_OUT_CFG="/etc/dkimproxy/dkimproxy_out.conf"
if [ ! '(' -f "$DKIMPROXY_IN_CFG" -o -f "$DKIMPROXY_OUT_CFG" ')' ]; then
echo "Error: one or both of the following files must be created:" >&2
echo "$DKIMPROXY_IN_CFG" >&2
echo "$DKIMPROXY_OUT_CFG" >&2
exit 1
fi
HOSTNAME=`hostname -f`
DKIMPROXY_IN_ARGS="
--hostname=$HOSTNAME
--conf_file=$DKIMPROXY_IN_CFG"
DKIMPROXY_OUT_ARGS="
--conf_file=$DKIMPROXY_OUT_CFG"
DKIMPROXY_COMMON_ARGS="
--user=$DKIMPROXYUSER
--group=$DKIMPROXYGROUP
--daemonize"
DKIMPROXY_IN_BIN="$DKIMPROXYDIR/bin/dkimproxy.in"
DKIMPROXY_OUT_BIN="$DKIMPROXYDIR/bin/dkimproxy.out"
PIDDIR=/var/run/dkimproxy
DKIMPROXY_IN_PID=$PIDDIR/dkimproxy_in.pid
DKIMPROXY_OUT_PID=$PIDDIR/dkimproxy_out.pid
case "$1" in
start-in)
echo -n "Starting inbound DKIM-proxy (dkimproxy.in)..."
# create directory for pid files if necessary
test -d $PIDDIR || mkdir -p $PIDDIR || exit 1
# start the daemon
$DKIMPROXY_IN_BIN $DKIMPROXY_COMMON_ARGS --pidfile=$DKIMPROXY_IN_PID $DKIMPROXY_IN_ARGS
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
echo done.
else
echo failed.
exit $RETVAL
fi
;;
start-out)
echo -n "Starting outbound DKIM-proxy (dkimproxy.out)..."
# create directory for pid files if necessary
test -d $PIDDIR || mkdir -p $PIDDIR || exit 1
# start the daemon
$DKIMPROXY_OUT_BIN $DKIMPROXY_COMMON_ARGS --pidfile=$DKIMPROXY_OUT_PID $DKIMPROXY_OUT_ARGS
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
echo done.
else
echo failed.
exit $RETVAL
fi
;;
start)
test -f $DKIMPROXY_IN_CFG && $0 start-in || exit $?
test -f $DKIMPROXY_OUT_CFG && $0 start-out || exit $?
;;
stop-in)
echo -n "Shutting down inbound DKIM-proxy (dkimproxy.in)..."
if [ -f $DKIMPROXY_IN_PID ]; then
kill `cat $DKIMPROXY_IN_PID` && rm -f $DKIMPROXY_IN_PID
RETVAL=$?
[ $RETVAL -eq 0 ] && echo done. || echo failed.
exit $RETVAL
else
echo not running.
fi
;;
stop-out)
echo -n "Shutting down outbound DKIM-proxy (dkimproxy.out)..."
if [ -f $DKIMPROXY_OUT_PID ]; then
kill `cat $DKIMPROXY_OUT_PID` && rm -f $DKIMPROXY_OUT_PID
RETVAL=$?
[ $RETVAL -eq 0 ] && echo done. || echo failed.
exit $RETVAL
else
echo not running.
fi
;;
stop)
test -f $DKIMPROXY_IN_CFG && $0 stop-in || exit $?
test -f $DKIMPROXY_OUT_CFG && $0 stop-out || exit $?
;;
restart)
$0 stop && $0 start || exit $?
;;
status-in)
echo -n "dkimproxy.in..."
if [ -f $DKIMPROXY_IN_PID ]; then
pid=`cat $DKIMPROXY_IN_PID`
if ps -ef |grep -v grep |grep -q "$pid"; then
echo " running (pid=$pid)"
else
echo " stopped (pid=$pid not found)"
fi
else
echo " stopped"
fi
;;
status-out)
echo -n "dkimproxy.out..."
if [ -f $DKIMPROXY_OUT_PID ]; then
pid=`cat $DKIMPROXY_OUT_PID`
if ps -ef |grep -v grep |grep -q "$pid"; then
echo " running (pid=$pid)"
else
echo " stopped (pid=$pid not found)"
fi
else
echo " stopped"
fi
;;
status)
test -f $DKIMPROXY_IN_CFG && $0 status-in || exit $?
test -f $DKIMPROXY_OUT_CFG && $0 status-out || exit $?
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac