In certain firmwares, eg. OVMF, the RNG protocol is not enabled unless
there is an RNG device. When not enabled, GRUB fails to initialize the
stack guard with random bytes. For testing, this is not a big issue, but
there have been bugs found in the initialization. So turn this on for EFI
platforms to catch any regressions.

Signed-off-by: Glenn Washburn <developm...@efficientek.com>
---
This patch will potentially cause a lot of failures on EFI platforms
because of a bug in stack smashing initialization, which the list has
been notified of. This patch is in part meant to exercise that bug and
allows successful test runs when that bug is fixed.

Glenn
---
 tests/util/grub-shell.in | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tests/util/grub-shell.in b/tests/util/grub-shell.in
index 715e1c2e67b3..496e1bab33c8 100644
--- a/tests/util/grub-shell.in
+++ b/tests/util/grub-shell.in
@@ -225,6 +225,13 @@ case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" 
in
        console=console;;
 esac
 
+case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in
+    # Only add the RNG device for EFI platforms because we currently only
+    # support Stack Smashing protection on EFI.
+    *-efi)
+       qemuopts="$qemuopts -device virtio-rng-pci" ;;
+esac
+
 timeout=${GRUB_SHELL_DEFAULT_TIMEOUT:-60}
 mkimage_extra_arg=
 debug=${GRUB_SHELL_DEFAULT_DEBUG:-$GRUB_TEST_DEFAULT_DEBUG}
-- 
2.34.1


_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to