/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.postinst

  • Committer: Teddy Hogeborn
  • Date: 2016-06-03 17:27:03 UTC
  • Revision ID: teddy@recompile.se-20160603172703-mc6tjor6rhq4xy74
mandos: Bug fix: Do multiprocessing cleanup correctly on exit

* mandos (main): Save module "multiprocessing" and open file "wnull"
                 as scope variables accessible by function cleanup(),
                 since the module and global variable may not be
                 accessible when the cleanup() function is run as
                 scheduled by atexit().

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
case "$1" in
19
21
    configure)
20
22
        # Rename old "mandos" user and group
32
34
                --home /nonexistent --no-create-home --group \
33
35
                --disabled-password --gecos "Mandos password system" \
34
36
                _mandos
 
37
        elif dpkg --compare-versions "$2" eq 1.7.4-1 \
 
38
                || dpkg --compare-versions "$2" eq "1.7.4-1~bpo8+1"
 
39
        then
 
40
            start=no
 
41
            if ! [ -f /var/lib/mandos/clients.pickle ]; then
 
42
                invoke-rc.d mandos stop
 
43
                start=yes
 
44
            fi
 
45
            chown _mandos:_mandos /var/lib/mandos/clients.pickle \
 
46
                  2>/dev/null || :
 
47
            if [ "$start" = yes ]; then
 
48
                invoke-rc.d mandos start
 
49
            fi
 
50
        fi
 
51
        if ! dpkg-statoverride --list "/var/lib/mandos" >/dev/null \
 
52
             2>&1; then
 
53
            chown _mandos:_mandos /var/lib/mandos
 
54
            chmod u=rwx,go= /var/lib/mandos
35
55
        fi
36
56
        ;;
37
 
 
 
57
    
38
58
    abort-upgrade|abort-deconfigure|abort-remove)
39
59
        ;;
40
 
 
 
60
    
41
61
    *)
42
62
        echo "$0 called with unknown argument '$1'" 1>&2
43
63
        exit 1
44
64
        ;;
45
65
esac
46
66
 
 
67
# Avahi version 0.6.31-2 and older provides "avahi" (instead of
 
68
# "avahi-daemon") in its /etc/init.d script header.  To make
 
69
# insserv(8) happy, we edit our /etc/init.d script header to contain
 
70
# the correct string before the code added by dh_installinit calls
 
71
# update.rc-d, which calls insserv.
 
72
avahi_version="`dpkg-query --showformat='${Version}' --show avahi-daemon`"
 
73
if dpkg --compare-versions "$avahi_version" le 0.6.31-2; then
 
74
    sed --in-place --expression='/^### BEGIN INIT INFO$/,/^### END INIT INFO$/s/^\(# Required-\(Stop\|Start\):.*avahi\)-daemon\>/\1/g' /etc/init.d/mandos
 
75
fi
 
76
 
47
77
#DEBHELPER#
48
78
 
49
79
exit 0