#!@l_prefix@/bin/openpkg rc ## ## rc.mimedefang -- Run-Commands ## %config mimedefang_enable="$openpkg_rc_def" mimedefang_flags="-X" mimedefang_filter="@l_prefix@/etc/mimedefang/mimedefang-filter" mimedefang_mx_socket="@l_prefix@/var/mimedefang/mimedefang-multiplexor.sock" mimedefang_socket="@l_prefix@/var/milter/socket/mimedefang" mimedefang_mx_embed_perl="yes" mimedefang_max_requests="200" mimedefang_mx_min="2" mimedefang_mx_busy="600" mimedefang_syslog_stats="yes" mimedefang_syslog_facility="mail" # NOTICE: mimedefang is multi-threaded and therefore cannot use # OSSP fsl -- you must use syslog. Therefore the rotate section # below will not work unless you define this variable: mimedefang_log_file="" mimedefang_log_prolog="true" mimedefang_log_epilog="true" mimedefang_log_numfiles="10" mimedefang_log_minsize="1M" %common mimedefang_pidfile="@l_prefix@/var/mimedefang/mimedefang.pid" mimedefang_mx_pidfile="@l_prefix@/var/mimedefang/mimedefang-multiplexor.pid" mimedefang_signal1 () { [ -f $2 ] && kill -$1 `head -1 $2` } mimedefang_signal () { local rc mimedefang_signal1 $1 $mimedefang_pidfile rc=$? mimedefang_signal1 $1 $mimedefang_mx_pidfile && [ $rc -eq 0 ] } %status -u @l_rusr@ -o mimedefang_usable="unknown" mimedefang_active="no" rcService mimedefang enable yes && \ mimedefang_signal 0 && mimedefang_active="yes" echo "mimedefang_enable=\"$mimedefang_enable\"" echo "mimedefang_usable=\"$mimedefang_usable\"" echo "mimedefang_active=\"$mimedefang_active\"" %start -u @l_rusr@ rcService mimedefang enable yes || exit 0 rcService mimedefang active yes && exit 0 [ -f $mimedefang_filter ] || exit 0 cmd="@l_prefix@/bin/mimedefang-multiplexor" cmd="$cmd -p $mimedefang_mx_pidfile" if [ ".$mimedefang_mx_embed_perl" = .yes ] ; then cmd="$cmd -E" fi if [ ".$mimedefang_syslog_stats" = .yes ] ; then cmd="$cmd -l -S $mimedefang_syslog_facility" fi cmd="$cmd -F $mimedefang_filter" cmd="$cmd -m $mimedefang_mx_min" cmd="$cmd -x $mimedefang_max_requests" cmd="$cmd -s $mimedefang_mx_socket" eval $cmd @l_prefix@/bin/mimedefang \ -P $mimedefang_pidfile \ -m $mimedefang_mx_socket \ -p $mimedefang_socket \ $mimedefang_flags %stop -u @l_rusr@ rcService mimedefang enable yes || exit 0 rcService mimedefang active no && exit 0 mimedefang_signal TERM rm -f $mimedefang_pidfile 2>/dev/null || true rm -f $mimedefang_mx_pidfile 2>/dev/null || true %restart -u @l_rusr@ rcService mimedefang enable yes || exit 0 rcService mimedefang active no && exit 0 rc mimedefang stop sleep 2 rc mimedefang start %daily -u @l_rusr@ rcService mimedefang enable yes || exit 0 [ ".$mimedefang_log_file" = . ] && exit 0 shtool rotate -f \ -n ${mimedefang_log_numfiles} -s ${mimedefang_log_minsize} -d \ -z ${mimedefang_log_complevel} -o @l_rusr@ -g @l_rusr@ -m 644 \ -P "${mimedefang_log_prolog}" \ -E "${mimedefang_log_epilog}; rc mimedefang restart" \ $mimedefang_log_file