Hi,

we are using grub2 with authentication enabled and multiple submenus.
Unfortunately it is not possible to return to a previous menu with ESC without 
triggering a superuser password prompt. This is not the desired behavior in 
my opinion.
I attached a patch to this email, which removes the password prompt when 
pressing escape.



Thank you very much in advance

Florian Kaiser
Microkernel Systems
tel +49 89 991950 - 0
florian_kai...@genua.de

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
genua
Gesellschaft für Netzwerk - und Unix-Administration mbH
Domagkstr. 7, D-85551 Kirchheim. http://www.genua.de
Tel: (089) 99 19 50-0, Fax: (089) 99 19 50 - 999

Geschäftsführer: Dr. Magnus Harlander, Dr. Michaela Harlander,
Bernhard Schneck. Amtsgericht München HRB 98238
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




From 1c4129d2f1751ae387fc5fd4073d70a3fa80f1e2 Mon Sep 17 00:00:00 2001
From: Florian Kaiser <fkai...@genua.de>
Date: Tue, 9 Jun 2015 19:01:03 +0200
Subject: [PATCH] grub: fix broken authorization behavior when pressing ESC

This change removes a superfluous authorization request,
which prevented the user from navigating backwards through
the menu tree using the ESC Key.

Change-Id: Ia4cd9ce45241e70758a6eeac4a2b33a9d73c0c6e
---
 contrib/grub2/grub-core/normal/menu.c |   25 ++++---------------------
 1 file changed, 4 insertions(+), 21 deletions(-)

diff --git a/contrib/grub2/grub-core/normal/menu.c b/contrib/grub2/grub-core/normal/menu.c
index b47991a..27978a6 100644
--- a/contrib/grub2/grub-core/normal/menu.c
+++ b/contrib/grub2/grub-core/normal/menu.c
@@ -886,27 +886,10 @@ show_menu (grub_menu_t menu, int nested, int autobooted)
 grub_err_t
 grub_show_menu (grub_menu_t menu, int nested, int autoboot)
 {
-  grub_err_t err1, err2;
+  grub_err_t err;
 
-  while (1)
-    {
-      err1 = show_menu (menu, nested, autoboot);
-      autoboot = 0;
-      grub_print_error ();
-
-      if (grub_normal_exit_level)
-	break;
-
-      err2 = grub_auth_check_authentication (NULL);
-      if (err2)
-	{
-	  grub_print_error ();
-	  grub_errno = GRUB_ERR_NONE;
-	  continue;
-	}
-
-      break;
-    }
+  err = show_menu (menu, nested, autoboot);
+  grub_print_error ();
 
-  return err1;
+  return err;
 }
-- 
1.7.10.4

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

Reply via email to