From f9d8f3551a47535c1e30afb28c42c8d6034ba59b Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Sun, 15 Jan 2023 20:56:50 +0100 Subject: debvm-run: fix for relative symlinks below boot/ Reported-by: Jochen Sprickerhof --- bin/debvm-run | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'bin') diff --git a/bin/debvm-run b/bin/debvm-run index 39928d2..ee94003 100755 --- a/bin/debvm-run +++ b/bin/debvm-run @@ -191,16 +191,17 @@ for KERNELLINK in vmlinuz vmlinux boot/vmlinuz boot/vmlinux; do KERNELNAME=$(/sbin/debugfs "$IMAGE" -R "stat $KERNELLINK" | sed 's/Fast link dest: "\(.*\)"/\1/;t;d') test -n "$KERNELNAME" && break done -test -n "$KERNELNAME" || die "failed to discover kernel image" - -if test "${KERNELLINK#boot/}" = "$KERNELLINK"; then - INITRDLINK=initrd.img +if test "${KERNELLINK%/*}" = "$KERNELLINK"; then + BOOTDIR= else - INITRDLINK=boot/initrd.img + BOOTDIR="${KERNELLINK%/*}/" fi -INITRDNAME=$(/sbin/debugfs "$IMAGE" -R "stat $INITRDLINK" | sed 's/Fast link dest: "\(.*\)"/\1/;t;d') +test -n "$KERNELNAME" || die "failed to discover kernel image" +test "${KERNELNAME#/}" = "$KERNELNAME" || KERNELNAME="$BOOTDIR$KERNELNAME" +INITRDNAME=$(/sbin/debugfs "$IMAGE" -R "stat ${BOOTDIR}initrd.img" | sed 's/Fast link dest: "\(.*\)"/\1/;t;d') test -n "$INITRDNAME" || die "failed to discover initrd image" +test "${INITRDNAME#/}" = "$INITRDNAME" || INITRDNAME="$BOOTDIR$INITRDNAME" KERNEL_CMDLINE="root=LABEL=debvm rw" NETDEV="user,id=net0" -- cgit v1.2.3