X-Git-Url: https://git.donarmstrong.com/?p=deb_pkgs%2Fspamass-milter.git;a=blobdiff_plain;f=contrib%2Fspamass-milter;fp=contrib%2Fspamass-milter;h=3c3e33d5ea862c971dcbd787dbade03a96c3795f;hp=0000000000000000000000000000000000000000;hb=8ad6e90591e0369fc6b2955a1fc687f840277eeb;hpb=b7c1bcb26ee594de6aa0a75516fed9c0b4d2ed5f diff --git a/contrib/spamass-milter b/contrib/spamass-milter new file mode 100755 index 0000000..3c3e33d --- /dev/null +++ b/contrib/spamass-milter @@ -0,0 +1,79 @@ +#! /bin/sh +# +# /usr/local/etc/rc.d script for FreeBSD +# $Id: spamass-milter,v 1.5 2014/09/11 00:42:45 kovert Exp $ + +# PROVIDE: spamass_milter +# KEYWORD: FreeBSD + +. /usr/local/etc/rc.subr + +name=spamass_milter +rcvar=`set_rcvar` + +command=/usr/local/sbin/spamass-milter + +# Override the spamass_milter_* variables in one of these files: +# /etc/rc.conf +# /etc/rc.conf.local +# /etc/rc.conf.d/spamass-milter +# +# DO NOT CHANGE THESE DEFAULT VALUES HERE +# +# spamass_milter_enable YES or NO +# spamass_milter_flags extra flags to pass to spamass-milter +# +# You probably won't need to change these unless you're running as +# non-root (see the rc.subr manpage for those flags): +# +# spamass_milter_pidfile path to pidfile +# spamass_milter_sockfile path to milter socket + +# load settings +load_rc_config $name + +spamass_milter_enable=${spamass_milter_enable:-NO} +spamass_milter_pidfile=${spamass_milter_pidfile:-/var/run/spamass-milter.pid} +spamass_milter_sockfile=${spamass_milter_sockfile:-/var/run/spamass.sock} +pidfile=${spamass_milter_pidfile} +spamass_milter_flags="-p $spamass_milter_sockfile -f -P $spamass_milter_pidfile $spamass_milter_flags" + +run_rc_command "$1" + +exit 1 + + +if ! PREFIX=$(expr $(realpath $0) : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then + echo "$0: Cannot determine the PREFIX - aborting" >&2 + exit 1 +fi + +case "$1" in +start) + rm -f /var/run/spamass.sock + [ -x ${PREFIX}/sbin/spamass-milter ] && + ${PREFIX}/sbin/spamass-milter -p /var/run/spamass.sock -f -P /var/run/spamass-milter.pid && + echo -n ' spamass-milter' + ;; +stop) + if [ -s /var/run/spamass-milter.pid ] ; then + pid=$(cat /var/run/spamass-milter.pid) + kill -TERM $pid + loop=0 + while [ $loop -lt 10 ] ; do + kill -0 $pid >/dev/null 2>&1 || break + [ $loop -eq 1 ] && echo -n "Sleeping for 10 seconds to allow spamass-milter to shutdown" + [ $loop -ge 1 ] && echo -n "." + sleep 1 + loop=$(( $loop + 1 )) + done + kill -0 $pid >/dev/null 2>&1 && echo "giving up" || echo "done" + fi + + ;; +*) + echo "Usage: `basename $0` {start|stop}" >&2 + ;; +esac + +exit 0