/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: Teddy Hogeborn
  • Date: 2015-08-02 09:36:40 UTC
  • Revision ID: teddy@recompile.se-20150802093640-nc0n17rbmqlbaxuf
Add D-Bus annotations on a few properties on the Client object.

The D-Bus property "Secret" on the interface
"se.recompile.Mandos.Client" should have the annotation
"org.freedesktop.DBus.Property.EmitsChangedSignal" set to
"invalidates".  Also, the properties "Created", "Fingerprint", "Name",
and "ObjectPath" should have the same annotation set to "const".

* mandos (ClientDBus.Name_dbus_property): Set annotation
                    "org.freedesktop.DBus.Property.EmitsChangedSignal"
                    to "const".
  (ClientDBus.Fingerprint_dbus_property): - '' -
  (ClientDBus.Created_dbus_property): - '' -
  (ClientDBus.ObjectPath_dbus_property): - '' -
  (ClientDBus.Secret_dbus_property): Set annotation
                    "org.freedesktop.DBus.Property.EmitsChangedSignal"
                    to "invalidates".

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/sh -e
 
1
#!/bin/sh
2
2
# This script can be called in the following ways:
3
3
#
4
4
# After the package was installed:
15
15
# If prerm fails during replacement due to conflict:
16
16
#       <postinst> abort-remove in-favour <new-package> <version>
17
17
 
 
18
set -e
 
19
 
18
20
# Update the initial RAM file system image
19
21
update_initramfs()
20
22
{
21
 
    if [ -x /usr/sbin/update-initramfs ]; then
22
 
        update-initramfs -u -k all
23
 
    fi
 
23
    update-initramfs -u -k all
24
24
    
25
25
    if dpkg --compare-versions "$2" lt-nl "1.0.10-1"; then
26
26
        # Make old initrd.img files unreadable too, in case they were
56
56
        -a -r /etc/keys/mandos/seckey.txt ]; then
57
57
        return 0
58
58
    fi
59
 
    if [ -x /usr/sbin/mandos-keygen ]; then
60
 
        mandos-keygen
61
 
    fi
 
59
    mandos-keygen
 
60
}
 
61
 
 
62
create_dh_params(){
 
63
    if [ -r /etc/keys/mandos/dhparams.pem ]; then
 
64
        return 0
 
65
    fi
 
66
    # Create a Diffe-Hellman parameters file
 
67
    DHFILE="`mktemp -t mandos-client-dh-parameters.XXXXXXXXXX.pem`"
 
68
    # First try certtool from GnuTLS
 
69
    if ! certtool --generate-dh-params --sec-param high \
 
70
         --outfile "$DHFILE"; then
 
71
        # Otherwise try OpenSSL
 
72
        if ! openssl genpkey -genparam -algorithm DH -out "$DHFILE" \
 
73
             -pkeyopt dh_paramgen_prime_len:3072; then
 
74
            # None of the commands succeded; give up
 
75
            rm -- "$DHFILE"
 
76
            return 1
 
77
        fi
 
78
    fi
 
79
    sed --in-place --expression='0,/^-----BEGIN DH PARAMETERS-----$/d' \
 
80
        "$DHFILE"
 
81
    sed --in-place --expression='1i-----BEGIN DH PARAMETERS-----' \
 
82
            "$DHFILE"
 
83
    cp --archive "$DHFILE" /etc/keys/mandos/dhparams.pem
 
84
    rm -- "$DHFILE"
62
85
}
63
86
 
64
87
case "$1" in
65
88
    configure)
66
89
        add_mandos_user "$@"
67
90
        create_key "$@"
 
91
        create_dh_params "$@" || :
68
92
        update_initramfs "$@"
69
93
        ;;
70
94
    abort-upgrade|abort-deconfigure|abort-remove)