/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to debian/mandos-client.postinst

  • Committer: Björn Påhlsson
  • Date: 2008-07-20 02:52:20 UTC
  • Revision ID: belorn@braxen-20080720025220-r5u0388uy9iu23h6
Added following support:
Pluginbased client handler
rewritten Mandos client
       Avahi instead of udp server discovery
       openpgp encrypted key support
Passprompt stand alone application for direct console input
Added logging for Mandos server

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/sh -e
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
 
 
18
 
# Update the initial RAM file system image
19
 
update_initramfs()
20
 
{
21
 
    if [ -x /usr/sbin/update-initramfs ]; then
22
 
        update-initramfs -u -k all
23
 
    fi
24
 
    
25
 
    if dpkg --compare-versions "$2" lt-nl "1.0.10-1"; then
26
 
        # Make old initrd.img files unreadable too, in case they were
27
 
        # created with mandos-client 1.0.8 or older.
28
 
        find /boot -maxdepth 1 -type f -name "initrd.img-*.bak" \
29
 
            -print0 | xargs --null --no-run-if-empty chmod o-r
30
 
    fi
31
 
}
32
 
 
33
 
# Add user and group
34
 
add_mandos_user(){
35
 
    # Rename old "mandos" user and group
36
 
    if dpkg --compare-versions "$2" lt "1.0.3-1"; then
37
 
        case "`getent passwd mandos`" in
38
 
            *:Mandos\ password\ system,,,:/nonexistent:/bin/false)
39
 
                usermod --login _mandos mandos
40
 
                groupmod --new-name _mandos mandos
41
 
                return
42
 
                ;;
43
 
        esac
44
 
    fi
45
 
    # Create new user and group
46
 
    if ! getent passwd _mandos >/dev/null; then
47
 
        adduser --system --force-badname --quiet --home /nonexistent \
48
 
            --no-create-home --group --disabled-password \
49
 
            --gecos "Mandos password system" _mandos
50
 
    fi
51
 
}
52
 
 
53
 
# Create client key pair
54
 
create_key(){
55
 
    if [ -r /etc/keys/mandos/pubkey.txt \
56
 
        -a -r /etc/keys/mandos/seckey.txt ]; then
57
 
        return 0
58
 
    fi
59
 
    if [ -x /usr/sbin/mandos-keygen ]; then
60
 
        mandos-keygen
61
 
    fi
62
 
}
63
 
 
64
 
case "$1" in
65
 
    configure)
66
 
        add_mandos_user "$@"
67
 
        create_key "$@"
68
 
        update_initramfs "$@"
69
 
        ;;
70
 
    abort-upgrade|abort-deconfigure|abort-remove)
71
 
        ;;
72
 
 
73
 
    *)
74
 
        echo "$0 called with unknown argument '$1'" 1>&2
75
 
        exit 1
76
 
        ;;
77
 
esac
78
 
 
79
 
#DEBHELPER#
80
 
 
81
 
exit 0