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

  • Committer: Teddy Hogeborn
  • Date: 2024-11-17 16:53:00 UTC
  • Revision ID: teddy@recompile.se-20241117165300-02hxm96s8cj9528e
mandos: Avoid closing configured server network socket

If we are passed a pre-created created network socket as a file
descriptor, we must avoid later closing it (when stdin, stdout and
stderr are dup2()ed over with /dev/null) by making sure that the
network file descriptor is not 0, 1, or 2, by creating a new file
descriptor if necessary.

However, when we create a new file descriptor we must check that the
new file descriptor is not 0, 1, or 2 either, and try again until we
get a suitable file descriptor.

Show diffs side-by-side

added added

removed removed

Lines of Context:
31
31
# Update the initial RAM file system image
32
32
update_initramfs()
33
33
{
34
 
    if [ -x /usr/sbin/update-initramfs ]; then
35
 
        update-initramfs -u -k all
 
34
    if command -v update-initramfs >/dev/null; then
 
35
        update-initramfs -k all -u 1>&2
 
36
    elif command -v dracut >/dev/null; then
 
37
        # Logic taken from dracut.postinst
 
38
        for kernel in /boot/vmlinu[xz]-*; do
 
39
            kversion="${kernel#/boot/vmlinu[xz]-}"
 
40
            if [ "$kversion" != "*" ]; then
 
41
                /etc/kernel/postinst.d/dracut "$kversion" 1>&2
 
42
            fi
 
43
        done
36
44
    fi
37
45
}
38
46
 
42
50
        ;;
43
51
 
44
52
    purge)
45
 
        shred --remove /etc/keys/mandos/seckey.txt 2>/dev/null || :
 
53
        shred --remove /etc/keys/mandos/seckey.txt \
 
54
            /etc/keys/mandos/tls-privkey.pem 2>/dev/null || :
46
55
        rm --force /etc/mandos/plugin-runner.conf \
47
56
            /etc/keys/mandos/pubkey.txt \
48
 
            /etc/keys/mandos/seckey.txt 2>/dev/null
 
57
            /etc/keys/mandos/seckey.txt \
 
58
            /etc/keys/mandos/tls-privkey.pem \
 
59
            /etc/keys/mandos/tls-pubkey.pem \
 
60
            /etc/keys/mandos/dhparams.pem 2>/dev/null
49
61
        update_initramfs
50
62
        ;;
51
63
    upgrade|failed-upgrade|disappear|abort-install|abort-upgrade)