blob: fa68a6f2ed6abf930eb9e8fe76321ebf969f539b (
plain)
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
|
#!/bin/sh
# pre install script for the Debian bind9 package
set -e
# Check if we are upgrading while running a kernel before 2.2.18. If so abort
# immediately since we don't support those kernels anymore.
if [ "$1" = "upgrade" ] && dpkg --compare-versions "`uname -r`" lt 2.2.18 ; then
cat <<EOF
ERROR: you are running a pre-2.2.18 kernel on this machine. Recent
versions of bind9 no longer support those kernels.
To prevent breaking nameservices on this system bind9 upgrade will abort.
EOF
exit 1
fi
APP_PROFILE="usr.sbin.named"
APP_CONFFILE="/etc/apparmor.d/$APP_PROFILE"
APP_COMPLAIN="/etc/apparmor.d/force-complain/$APP_PROFILE"
if [ "$1" = "upgrade" ]; then
mkdir -p `dirname $APP_COMPLAIN` 2>/dev/null || true
if dpkg --compare-versions $2 lt 1:9.3.4-2ubuntu2 ; then
# force-complain for pre-apparmor upgrades
ln -sf $APP_CONFFILE $APP_COMPLAIN
elif dpkg --compare-versions $2 lt 1:9.4.2-3ubuntu1 ; then
if [ -e "$APP_CONFFILE" ]; then
md5sum="`md5sum \"$APP_CONFFILE\" | sed -e \"s/ .*//\"`"
pkg_md5sum="`sed -n -e \"/^Conffiles:/,/^[^ ]/{\\\\' $APP_CONFFILE'{s/.* //;p}}\" /var/lib/dpkg/status`"
if [ "$md5sum" = "$pkg_md5sum" ]; then
# force-complain when upgrade from pre-shipped profile and an existing
# profile is same as in conffiles
ln -sf $APP_CONFFILE $APP_COMPLAIN
fi
else
# force-complain on upgrade from pre-shipped profile and
# there is no existing profile
ln -sf $APP_CONFFILE $APP_COMPLAIN
fi
fi
fi
#DEBHELPER#
exit 0
|