diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 08:04:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 08:04:29 +0000 |
commit | 409ea80402885dd937c6c37e4648d2afb7500414 (patch) | |
tree | af4ae653b1affe4e7190dd3854b2e2b029d71a36 /debian/initramfs/hooks/cryptgnupg | |
parent | Adding upstream version 2:2.6.1. (diff) | |
download | cryptsetup-409ea80402885dd937c6c37e4648d2afb7500414.tar.xz cryptsetup-409ea80402885dd937c6c37e4648d2afb7500414.zip |
Adding debian version 2:2.6.1-6.debian/2%2.6.1-6
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'debian/initramfs/hooks/cryptgnupg')
-rw-r--r-- | debian/initramfs/hooks/cryptgnupg | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/debian/initramfs/hooks/cryptgnupg b/debian/initramfs/hooks/cryptgnupg new file mode 100644 index 0000000..dcb5248 --- /dev/null +++ b/debian/initramfs/hooks/cryptgnupg @@ -0,0 +1,46 @@ +#!/bin/sh + +set -e + +PREREQ="cryptroot" + +prereqs() +{ + echo "$PREREQ" +} + +case "$1" in + prereqs) + prereqs + exit 0 + ;; +esac + +. /usr/share/initramfs-tools/hook-functions +. /lib/cryptsetup/functions + +if [ ! -x "$DESTDIR/lib/cryptsetup/scripts/decrypt_gnupg" ] || [ ! -f "$TABFILE" ]; then + exit 0 +fi + +# Hooks for loading gnupg software and symmetrically encrypted key into +# the initramfs +copy_keys() { + crypttab_parse_options + if [ "${CRYPTTAB_OPTION_keyscript-}" = "/lib/cryptsetup/scripts/decrypt_gnupg" ]; then + if [ -f "$CRYPTTAB_KEY" ]; then + [ -f "$DESTDIR$CRYPTTAB_KEY" ] || copy_file keyfile "$CRYPTTAB_KEY" || RV=$? + else + cryptsetup_message "ERROR: Target $CRYPTTAB_NAME has a non-existing key file $CRYPTTAB_KEY" + RV=1 + fi + fi +} + +RV=0 +crypttab_foreach_entry copy_keys + +# install askpass and GnuPG +copy_exec /lib/cryptsetup/askpass +copy_exec /usr/bin/gpg +exit $RV |