/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-09-09 04:24:39 UTC
  • Revision ID: teddy@recompile.se-20240909042439-j85mr20uli2hnyis
Eliminate compiler warnings

Many programs use nested functions, which now result in a linker
warning about executable stack.  Hide this warning.  Also, rewrite a
loop in the plymouth plugin to avoid warning about signed overflow.
This change also makes the plugin pick the alphabetically first
process entry instead of the last, in case many plymouth processes are
found (which should be unlikely).

* Makefile (plugin-runner, dracut-module/password-agent,
  plugins.d/password-prompt, plugins.d/mandos-client,
  plugins.d/plymouth): New target; set LDFLAGS to add "-Xlinker
  --no-warn-execstack".
* plugins.d/plymouth.c (get_pid): When no pid files are found, and we
  are looking through the process list, go though it from the start
  instead of from the end, i.e. in normal alphabetical order and not
  in reverse order.

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 removed:
26
26
# If preinst fails during upgrade:
27
27
#       <new-postrm> abort-upgrade <old-version>
28
28
 
 
29
set -e
29
30
 
30
 
# Update the initramfs
 
31
# Update the initial RAM file system image
31
32
update_initramfs()
32
33
{
33
 
        if which update-initramfs >/dev/null 2>&1; then
34
 
                update-initramfs -u
35
 
        fi
 
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
 
44
    fi
36
45
}
37
46
 
38
 
 
39
47
case "$1" in
40
48
    remove)
41
49
        update_initramfs
42
50
        ;;
43
51
 
44
52
    purge)
45
 
        shred --remove /etc/keys/mandos/seckey.txt || :
 
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
49
 
        rmdir /etc/keys/mandos /etc/mandos/plugins.d /etc/mandos || :
 
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
 
61
        update_initramfs
50
62
        ;;
51
63
    upgrade|failed-upgrade|disappear|abort-install|abort-upgrade)
52
64
        ;;
53
65
 
54
66
    *)
55
 
        echo "$0 called with unknown argument \`$1'" 1>&2
 
67
        echo "$0 called with unknown argument '$1'" 1>&2
56
68
        exit 1
57
69
        ;;
58
70
esac