/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release
237.11.13 by Teddy Hogeborn
Miscellaneous fixes prompted by lintian:
1
#!/bin/sh
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
2
# This script can be called in the following ways:
3
#
4
# After the package was installed:
5
#       <postinst> configure <old-version>
6
#
7
#
8
# If prerm fails during upgrade or fails on failed upgrade:
9
#       <old-postinst> abort-upgrade <new-version>
10
#
11
# If prerm fails during deconfiguration of a package:
12
#       <postinst> abort-deconfigure in-favour <new-package> <version>
13
#                  removing <old-package> <version>
14
#
15
# If prerm fails during replacement due to conflict:
16
#       <postinst> abort-remove in-favour <new-package> <version>
17
237.7.515 by Teddy Hogeborn
Show debconf note about new TLS key IDs
18
. /usr/share/debconf/confmodule
19
237.11.13 by Teddy Hogeborn
Miscellaneous fixes prompted by lintian:
20
set -e
21
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
22
case "$1" in
23
    configure)
237.2.1 by Teddy Hogeborn
First version of a somewhat complete D-Bus server interface. Also
24
	# Rename old "mandos" user and group
237.2.110 by Teddy Hogeborn
* debian/mandos.postinst (configure): Don't look for user and group
25
	if dpkg --compare-versions "$2" lt "1.0.3-1"; then
26
	    case "`getent passwd mandos`" in
27
		*:Mandos\ password\ system,,,:/nonexistent:/bin/false)
28
		    usermod --login _mandos mandos
29
		    groupmod --new-name _mandos mandos
30
		    ;;
31
	    esac
32
	fi
237.2.1 by Teddy Hogeborn
First version of a somewhat complete D-Bus server interface. Also
33
	# Create new user and group
34
	if ! getent passwd _mandos >/dev/null; then
35
	    adduser --system --force-badname --quiet \
36
		--home /nonexistent --no-create-home --group \
37
		--disabled-password --gecos "Mandos password system" \
38
		_mandos
237.7.373 by Teddy Hogeborn
Server bug fix: Include CAP_SETGID so it does not run as root
39
	elif dpkg --compare-versions "$2" eq 1.7.4-1 \
40
		|| dpkg --compare-versions "$2" eq "1.7.4-1~bpo8+1"
41
	then
42
	    start=no
43
	    if ! [ -f /var/lib/mandos/clients.pickle ]; then
44
		invoke-rc.d mandos stop
45
		start=yes
46
	    fi
47
	    chown _mandos:_mandos /var/lib/mandos/clients.pickle \
48
		  2>/dev/null || :
49
	    if [ "$start" = yes ]; then
50
		invoke-rc.d mandos start
51
	    fi
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
52
	fi
237.7.686 by Teddy Hogeborn
Fix bug in server Debian package: Fails to start on first install
53
	# Reload D-Bus daemon to be aware of the _mandos user & group
54
	if [ -x /etc/init.d/dbus ]; then
55
	    invoke-rc.d dbus force-reload || :
56
	fi
237.7.385 by Teddy Hogeborn
Server: Make persistent state directory mode u=rwx,go=
57
	if ! dpkg-statoverride --list "/var/lib/mandos" >/dev/null \
58
	     2>&1; then
59
	    chown _mandos:_mandos /var/lib/mandos
60
	    chmod u=rwx,go= /var/lib/mandos
61
	fi
237.7.515 by Teddy Hogeborn
Show debconf note about new TLS key IDs
62
237.7.519 by Teddy Hogeborn
Bug fix: Only create TLS key with certtool, and read correct key file
63
	if dpkg --compare-versions "$2" eq "1.8.0-1" \
64
		|| dpkg --compare-versions "$2" eq "1.8.0-1~bpo9+1"; then
65
	    if grep --quiet --regexp='^[[:space:]]*key_id[[:space:]]*=[[:space:]]*[Ee]3[Bb]0[Cc]44298[Ff][Cc]1[Cc]149[Aa][Ff][Bb][Ff]4[Cc]8996[Ff][Bb]92427[Aa][Ee]41[Ee]4649[Bb]934[Cc][Aa]495991[Bb]7852[Bb]855[[:space:]]*$' /etc/mandos/clients.conf; then
66
		sed --in-place \
67
		    --expression='/^[[:space:]]*key_id[[:space:]]*=[[:space:]]*[Ee]3[Bb]0[Cc]44298[Ff][Cc]1[Cc]149[Aa][Ff][Bb][Ff]4[Cc]8996[Ff][Bb]92427[Aa][Ee]41[Ee]4649[Bb]934[Cc][Aa]495991[Bb]7852[Bb]855[[:space:]]*$/d' \
68
		    /etc/mandos/clients.conf
69
		invoke-rc.d mandos restart
70
		db_version 2.0
71
		db_fset mandos/removed_bad_key_ids seen false
72
		db_reset mandos/removed_bad_key_ids
73
		db_input critical mandos/removed_bad_key_ids || true
74
		db_go
75
		db_stop
76
	    fi
77
	fi
78
237.7.515 by Teddy Hogeborn
Show debconf note about new TLS key IDs
79
	gnutls_version=$(dpkg-query --showformat='${Version}' \
80
				    --show libgnutls30 \
81
				    2>/dev/null || :)
82
	if [ -n "$gnutls_version" ] \
83
	       && dpkg --compare-versions $gnutls_version ge 3.6.6; then
84
	    db_version 2.0
85
	    db_input critical mandos/key_id || true
86
	    db_go
87
	    db_stop
88
	fi
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
89
	;;
237.14.2 by Teddy Hogeborn
Directory with persistent state can now be changed with the "statedir"
90
    
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
91
    abort-upgrade|abort-deconfigure|abort-remove)
92
	;;
237.14.2 by Teddy Hogeborn
Directory with persistent state can now be changed with the "statedir"
93
    
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
94
    *)
237.2.38 by Teddy Hogeborn
* debian/mandos-client.postinst: Converted to Bourne shell. Also
95
	echo "$0 called with unknown argument '$1'" 1>&2
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
96
	exit 1
97
	;;
98
esac
99
237.7.198 by Teddy Hogeborn
Fix Debian package bug with avahi-daemon 0.6.31-2 or older.
100
# Avahi version 0.6.31-2 and older provides "avahi" (instead of
101
# "avahi-daemon") in its /etc/init.d script header.  To make
102
# insserv(8) happy, we edit our /etc/init.d script header to contain
103
# the correct string before the code added by dh_installinit calls
237.7.238 by Teddy Hogeborn
Fix typo in code comment.
104
# update.rc-d, which calls insserv.
237.7.198 by Teddy Hogeborn
Fix Debian package bug with avahi-daemon 0.6.31-2 or older.
105
avahi_version="`dpkg-query --showformat='${Version}' --show avahi-daemon`"
106
if dpkg --compare-versions "$avahi_version" le 0.6.31-2; then
107
    sed --in-place --expression='/^### BEGIN INIT INFO$/,/^### END INIT INFO$/s/^\(# Required-\(Stop\|Start\):.*avahi\)-daemon\>/\1/g' /etc/init.d/mandos
108
fi
109
187.1.1 by Teddy Hogeborn
* debian/mandos.postinst: New. Create mandos user and group.
110
#DEBHELPER#
111
112
exit 0