d13bffce39807c4082ac7ba7922260baba7650f9
[kernel-cn.git] / debian / preinst
1 #!/bin/sh
2 # preinst script for kernel-2.6-cn
3 #
4 # see: dh_installdeb(1)
5
6 set -e
7
8 # summary of how this script can be called:
9 #        * <new-preinst> `install'
10 #        * <new-preinst> `install' <old-version>
11 #        * <new-preinst> `upgrade' <old-version>
12 #        * <old-preinst> `abort-upgrade' <new-version>
13 # for details, see http://www.debian.org/doc/debian-policy/ or
14 # the debian-policy package
15
16
17 case "$1" in
18     install|upgrade)
19     ;;
20
21     abort-upgrade)
22         # check if we have Layer7 active...
23         if iptables-save | grep -qs '^-A.* -m layer7 '; then
24             echo 'CN: Layer7 Netfilter no longer supported, report this to SysHelp!'
25             exit 1
26         fi
27     ;;
28
29     *)
30         echo "preinst called with unknown argument \`$1'" >&2
31         exit 1
32     ;;
33 esac
34
35 # check if the config script fixed the grub diverts
36 if [ -e /usr/sbin/grub.real -o -e /usr/sbin/grub-probe.real ]; then
37     echo "CN: Please install this package using apt-get."
38     exit 1
39 fi
40
41 # make GRUB template directory
42 if [ ! -d /boot/grub ]; then
43     echo "CN: Made /boot/grub directory."
44     mkdir -p /boot/grub
45 fi
46
47 ################################################################################
48
49 SHIELD=$(sysctl -e -n kernel.exec-shield)
50
51 if [ ! -z "$SHIELD" ]; then
52     sysctl -e -w kernel.exec-shield=0 >/dev/null 2>&1 || true
53     echo "CN: Disabled Exec-Shield."
54 fi
55
56 ################################################################################
57
58 # dh_installdeb will replace this with shell code automatically
59 # generated by other debhelper scripts.
60
61 #DEBHELPER#
62
63 exit 0