tests/util/grub-shell-luks-tester: Fix detached header test getting wrong header path

When $detached_header was set 1, $luksdiskfile was set to the LUKS header
file path with "${detached_header:-$luksfile}" appended, which evaluates
to "1". Fix this by using two statements to set $luksdiskfile. The first
sets it to the header file if $detached_header is set, otherwise leave it
unset. The second statement sets it to itself if it is already set,
otherwise it is set to $luksfile.

Fixes: a7b540e6e (tests: Add cryptomount functional test)

Signed-off-by: Glenn Washburn <development@efficientek.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
Glenn Washburn
2024-06-08 23:22:05 -05:00
committed by Daniel Kiper
parent c22e052fe2
commit c1ee4da6a9

View File

@@ -162,6 +162,8 @@ get_random_bytes() {
lukstestdir="`mktemp -d "${TMPDIR:-/tmp}/$(basename "$0").XXXXXXXXXX"`" || exit 20
luksfile=$lukstestdir/luks.disk
lukshdrfile=$lukstestdir/luks.header
luksdiskfile=${detached_header:+$lukshdrfile}
luksdiskfile=${luksdiskfile:-$luksfile}
lukskeyfile=$lukstestdir/luks.key
vfile=$lukstestdir/mnt/test.verify
vtext="TEST VERIFIED"
@@ -193,7 +195,7 @@ truncate -s $disksize $luksfile || exit 21
cryptsetup luksFormat -q $csopts $luksfile $lukskeyfile || exit 22
# Run any cryptsetup scripts
export luksdiskfile=${detached_header:+$lukshdrfile}${detached_header:-$luksfile}
export luksdiskfile
export lukskeyfile
for csscript in $csscripts; do
[ -f "$csscript" ] && . $csscript