summaryrefslogtreecommitdiff
path: root/postfix
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2008-05-25 17:02:11 +0000
committerJonas Smedegaard <dr@jones.dk>2008-05-25 17:02:11 +0000
commite1100903a0ffad54678e278134b0149e2adb928e (patch)
tree065fc198f05013adff992b90abae6a8d0f75f7a8 /postfix
parent4c0807e485585770792cff5764e6dc47012453c9 (diff)
Restart if master.cf was changed, and do nothing if, well, nothing was changed.
Diffstat (limited to 'postfix')
-rwxr-xr-xpostfix/postfix.sh26
1 files changed, 19 insertions, 7 deletions
diff --git a/postfix/postfix.sh b/postfix/postfix.sh
index e183e29..923029e 100755
--- a/postfix/postfix.sh
+++ b/postfix/postfix.sh
@@ -3,7 +3,7 @@
# /etc/local-COMMON/postfix/postfix.sh
# Copyright 2002-2007 Jonas Smedegaard <dr@jones.dk>
#
-# $Id: postfix.sh,v 1.70 2008-05-25 16:44:56 jonas Exp $
+# $Id: postfix.sh,v 1.71 2008-05-25 17:02:11 jonas Exp $
#
# Auto-tweak plain installed postfix Debian package
#
@@ -314,11 +314,12 @@ EOF
fi
fi
-diff -ruN "$confdir" "$tempdir" || if [ $? -gt 1 ]; then exit $?; fi
+diff -ruN "$confdir" "$tempdir" || if [ $? -gt 1 ]; then exit $?; else needs_reload="1"; fi
+diff "$confdir/master.cf" "$tempdir/master.cf" || if [ $? -gt 1 ]; then exit $?; else needs_restart="1"; fi
if [ "$force" = "1" ]; then
do_update="y"
-else
+elif [ "1" = "$needs_reload" ]; then
echo -n "Above is the intended changes. OK to update (y/N)? "
read do_update
fi
@@ -336,16 +337,27 @@ case $do_update in
postmap "$confdir/$file"
done
- # FIXME: restart if master.conf has been edited
- invoke-rc.d postfix reload
+ if [ "1" = "$needs_restart" ]; then
+ invoke-rc.d postfix restart
+ else
+ invoke-rc.d postfix force-reload
+ fi
- echo >&2 "Changes applied!"
+ if [ "1" = "$needs_reload" ]; then
+ echo >&2 "Changes applied!"
+ fi
;;
*)
- exit1 "Aborted!"
+ if [ "1" = "$needs_reload" ]; then
+ exit1 "Aborted!"
+ fi
;;
esac
+if [ "1" != "$needs_reload" ]; then
+ echo >&2 "No changes needed!"
+fi
+
# Based on this: http://jimsun.linxnet.com/misc/postfix-anti-UCE.txt
# Support for trusted MX backup networks added
# PCRE stuff avoided, as PCRE is only optional on newest Debian packages