From d71c1d985c8cfc117ad3e9a2aad7f9111016a150 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Wed, 11 Jul 2007 17:28:40 +0000 Subject: Support several prioritized locations for paramfiles. --- postfix/postfix.sh | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'postfix/postfix.sh') diff --git a/postfix/postfix.sh b/postfix/postfix.sh index cf26162..63c10b8 100755 --- a/postfix/postfix.sh +++ b/postfix/postfix.sh @@ -3,7 +3,7 @@ # /etc/local-COMMON/postfix/postfix.sh # Copyright 2002-2004 Jonas Smedegaard # -# $Id: postfix.sh,v 1.35 2007-06-06 11:05:48 jonas Exp $ +# $Id: postfix.sh,v 1.36 2007-07-11 17:28:40 jonas Exp $ # # Auto-tweak plain installed postfix Debian package # @@ -16,7 +16,7 @@ set -e -paramdir='/etc/local-COMMON/postfix' +paramdirs='/etc/local/postfix /etc/local-ORG/postfix /etc/local-REDPILL/postfix /etc/local-COMMON/postfix' confdir='/etc/postfix' postconf=/usr/sbin/postconf sp='[[:space:]]' @@ -55,12 +55,6 @@ else fi sasldir="$confdir/sasl" -#function getlinesfromfile() { -# param="$1" -# echo -n "$param = " -# cat $paramdir/$param | grep -v '^#' | sed 's/#.*//' | tr '\n' ',' | sed -e 's/^[, ]*//' -e 's/[, ]\+/,/g' -e 's/,$//' -#} - function getlinesfromfile() { param="$1" shift @@ -87,6 +81,17 @@ function getlinesfromfile() { done replacements="$replacements;s/$oldparam/$newstring/" done + paramdir='' + for dir in $paramdirs; do + if [ -d "$dir" ] && [ -f "$dir/$param" ]; then + paramdir="$dir" + break + fi + done + if [ -z "$paramdir" ]; then + echo "ERROR: Parameter file for \"$param\" not found." + exit 1 + fi echo -n "$param = " cat $paramdir/$param | sed 's/#.*//' | tr '\n' ',' | sed -e 's/^[, ]*//;s/[, ]\+/,/g' -e 's/\^/ /g' -e "s/,\$//$replacements" } -- cgit v1.2.3