X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=example%2Fpostlicyd.initd.sh;h=e32764b278d1aacaedfe680a9d681bbf7765ac00;hb=d6f820ed2e86f48c23bc7dc4ee3f591a2d46fc5f;hp=a9f5866a8fa7920226ad730b51ebf2c3151d4fa7;hpb=44dfcc42a03fdd403626e534ab279c9c63593e12;p=apps%2Fpfixtools.git diff --git a/example/postlicyd.initd.sh b/example/postlicyd.initd.sh index a9f5866..e32764b 100755 --- a/example/postlicyd.initd.sh +++ b/example/postlicyd.initd.sh @@ -13,15 +13,25 @@ CONF=/etc/pfixtools/postlicyd.conf case "$1" in start) - $POSTLICYD -p "$PIDFILE" "$CONF" + mkdir -p `dirname "$PIDFILE"` || die "Can't create $PIDFILE" + echo "Starting postlicyd..." + flock -x -n "$PIDFILE" -c "true" || die "Already started" + $POSTLICYD -p "$PIDFILE" "$CONF" || die "Failed" + echo "Started" ;; stop) - kill `cat $PIDFILE` + echo "Stopping postlicyd..." + ( flock -x -n "$PIDFILE" -c "true" && die "Not started" ) \ + || ( kill `cat $PIDFILE` && echo "Stopped" ) \ + || die "Failed" ;; reload) - kill -HUP `cat $PIDFILE` + echo "Reloading postlicyd..." + ( flock -x -n "$PIDFILE" -c "true" && die "Not started" ) \ + || ( kill -HUP `cat $PIDFILE` && ( sleep 3; echo "Done" ) ) \ + || die "Failed" ;; *)