File: spampd.postinst

package info (click to toggle)
spampd 2.62-2
  • links: PTS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,072 kB
  • sloc: perl: 7,117; sh: 240; makefile: 18
file content (76 lines) | stat: -rw-r--r-- 2,481 bytes parent folder | download
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#