File: racoon.postinst

package info (click to toggle)
ipsec-tools 1%3A0.6.6-3.1etch3
  • links: PTS
  • area: main
  • in suites: etch
  • size: 4,844 kB
  • ctags: 4,390
  • sloc: ansic: 52,149; sh: 9,000; yacc: 3,813; perl: 2,001; lex: 1,273; makefile: 267
file content (102 lines) | stat: -rw-r--r-- 2,966 bytes parent folder | download | duplicates (5)
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#! /bin/sh
# postinst script for racoon
#
# see: dh_installdeb(1)

set -e

update_param() {                                                               
        eval old=\"'$'$1\"
        eval new=\"'$'new_$1\"

        if test "$old" = "$new"; then
                return
        fi

        if test -z "$old"; then
                grep -Eq "^ *$1=" "$INITCONFFILE" || echo "$1=" \
                       >> "$INITCONFFILE"
        fi

	sed -e "s/^ *$1=.*/$1=\"$new\"/" < $INITCONFFILE > $INITCONFFILE.$$
	mv -f $INITCONFFILE.$$ $INITCONFFILE
}

# summary of how this script can be called:
#        * <postinst> `configure' <most-recently-configured-version>
#        * <old-postinst> `abort-upgrade' <new version>
#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
#          <new-version>
#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
#          <failed-install-package> <version> `removing'
#          <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
#

case "$1" in
    configure)
	if [ -L /etc/rc2.d/S20racoon ]; then
	    # remove this old entry, we'll add correct one below
	    update-rc.d -f racoon remove > /dev/null || exit 0
	fi
    ;;

    abort-upgrade|abort-remove|abort-deconfigure)
    exit 0	
    ;;

    *)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac

# Handle debconf
. /usr/share/debconf/confmodule
                                                                                                                              
INITCONFFILE=/etc/default/racoon
 
# We generate several files during the postinst, and we don't want
#       them to be readable only by root.
umask 022
 
# Generate configuration file if it does not exist, using default values.
[ -r "${INITCONFFILE}" ] || {
        echo Generating ${INITCONFFILE}... >&2
        cat >${INITCONFFILE} <<'EOFMAGICNUMBER1234'
# Defaults for racoon initscript
# sourced by /etc/init.d/racoon
# installed at /etc/default/racoon by the maintainer scripts
 
#
# This is a POSIX shell fragment
#
 
# Which configuration mode shall we use for racoon?
#       Should be either "direct" (edit racoon.conf by hand)
#       or "racoon-tool" (use this tool to do it).
#       Unknown values are treated as if "direct" was given.
CONFIG_MODE=""
# Arguments to pass to racoon (ignored when config mode is racoon-tool)
RACOON_ARGS=""
EOFMAGICNUMBER1234
}

# ------------------------- Debconf questions start ---------------------

db_get racoon/config_mode || true
new_CONFIG_MODE="${RET}"
update_param CONFIG_MODE
db_stop
                                                                                                                              
# ------------------------- Debconf questions end ---------------------

# Fix psk.txt permissions
[ -f /etc/racoon/psk.txt ] && chmod 0600 /etc/racoon/psk.txt

#DEBHELPER#

exit 0