1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
#!/bin/bash
set -e
handle_init_errs ()
{
RET=$?
if [ "$RET" = "6" ]; then
return 0
else
exit $RET
fi
set -e
}
case "$1" in
install|configure)
adduser --system --group \
--no-create-home --home /nonexistent \
--quiet spampd
if dpkg --compare-versions "$2" le-nl 2.62-2~; then
DEFAULT=/etc/default/spampd.dpkg-backup
CONFIG=/etc/spampd.cfg
if [ -f ${DEFAULT} ]; then
. ${DEFAULT}
istrue () {
ANS=$(echo $1 | tr A-Z a-z)
[ "$ANS" = 'yes' -o "$ANS" = 'true' -o "$ANS" = 'enable' -o "$ANS" = '1' ]
}
#
# Find differences to default config
#
SED_ARGS=
istrue "$TAGALL" || SED_ARGS="${SED_ARGS} -e 's/tagall 1/tagall 0/'"
istrue "$LOCALONLY" || SED_ARGS="${SED_ARGS} -e 's/local-only 1/local-only 0/'"
istrue "$LOGINET" && SED_ARGS="${SED_ARGS} -e 's/# logsock inet/logsock inet/'"
[ -n "${LISTENPORT}" -a "${LISTENPORT}" -ne 10025 ] && SED_ARGS="${SED_ARGS} -e 's/port 10025/port ${LISTENPORT}/'"
[ -n "${LISTENHOST}" -a "${LISTENHOST}" != "127.0.0.1" ] && SED_ARGS="${SED_ARGS} -e 's/host 127.0.0.1/host ${LISTENHOST}/'"
[ -n "${DESTPORT}" -a "${DESTPORT}" -ne 10026 ] && SED_ARGS="${SED_ARGS} -e 's/relayport 10026/relayport ${DESTPORT}/'"
[ -n "${DESTHOST}" -a "${DESTHOST}" != "127.0.0.1" ] && SED_ARGS="${SED_ARGS} -e 's/relayhost 127.0.0.1/relayhost ${DESTHOST}/'"
[ -n "${CHILDREN}" -a "${CHILDREN}" -ne 3 ] && SED_ARGS="${SED_ARGS} -e 's/max-servers 3/max-servers ${CHILDREN}/'"
[ -n "${USERID}" -a "${USERID}" != "spampd" ] && SED_ARGS="${SED_ARGS} -e 's/user spampd/user ${USERID}/'"
[ -n "${GRPID}" -a "${GRPID}" != "spampd" ] && SED_ARGS="${SED_ARGS} -e 's/group spampd/group ${GRPID}/'"
if [ -n "${ADDOPTS}" ]; then
shopt -s extglob
ADD=${ADDOPTS/#?(-|--)/\\n} # first option
ADD=${ADD//+( )?(-|--)/\\n} # subsequent option(s)
SED_ARGS="${SED_ARGS} -e 's%# Inserted from ADDOPTS in spampd.default file:%# Inserted from ADDOPTS in spampd.default file:${ADD}%'"
fi
if [ -n "${SED_ARGS}" ]; then
eval "sed ${SED_ARGS} ${CONFIG} > ${CONFIG}.dpkg-new && mv ${CONFIG}.dpkg-new ${CONFIG}"
fi
fi
fi
;;
*)
;;
esac
#DEBHELPER#
|