diff options
Diffstat (limited to 'network/milter-greylist/rc.milter-greylist.new')
-rw-r--r-- | network/milter-greylist/rc.milter-greylist.new | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/network/milter-greylist/rc.milter-greylist.new b/network/milter-greylist/rc.milter-greylist.new new file mode 100644 index 0000000000..5f4ce88cb4 --- /dev/null +++ b/network/milter-greylist/rc.milter-greylist.new @@ -0,0 +1,83 @@ +#!/bin/sh +# +# Slackware init script for milter-greylist + +# Copyright 2018 Dave Woodfall <dave@tty1.uk> +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +BIN="milter-greylist" +SOCK="/var/milter-greylist/milter-greylist.sock" + +start() { + if [ -e "$SOCK" ]; then + PID=$(pgrep -x $BIN) + if [ -n "$PID" ]; then + printf "%s\n" "$BIN is already running with pid $PID" + exit 1 + else + printf "%s\n" "Removing stale socket..." + rm -vf "$SOCK" + fi + fi + printf "%s\n" "Starting $BIN" + $BIN + sleep 2 + PID=$(pgrep -x $BIN) + if [ -n "$PID" ]; then + printf "%s\n" "$BIN is running with pid $PID" + fi +} + +stop() { + printf "%s\n" "Stopping $BIN" + pkill -x $BIN + sleep 2 + printf "%s\n" "Removing socket..." + rm -vf "$SOCK" +} + +status() { + PID=$(pgrep -x $BIN) + if [ -n "$PID" ]; then + printf "%s\n" "$BIN is running with pid $PID" + else + printf "%s\n" "$BIN is not running" + fi +} +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + sleep 3 # allow some time to dump the db + start + ;; + status) + status + ;; + *) + echo Usage: $0 "{start|stop|restart|status}" + exit 1 + ;; +esac |