Page MenuHomeFreeBSD

D32991.diff
No OneTemporary

D32991.diff

diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c
--- a/stand/efi/loader/main.c
+++ b/stand/efi/loader/main.c
@@ -1402,6 +1402,30 @@
COMMAND_SET(lsefi, "lsefi", "list EFI handles", command_lsefi);
+static void
+lsefi_print_handle_info(EFI_HANDLE handle)
+{
+ EFI_DEVICE_PATH *devpath;
+ EFI_DEVICE_PATH *imagepath;
+ CHAR16 *dp_name;
+
+ imagepath = efi_lookup_image_devpath(handle);
+ if (imagepath != NULL) {
+ dp_name = efi_devpath_name(imagepath);
+ printf("Handle for image %S", dp_name);
+ efi_free_devpath_name(dp_name);
+ return;
+ }
+ devpath = efi_lookup_devpath(handle);
+ if (devpath != NULL) {
+ dp_name = efi_devpath_name(devpath);
+ printf("Handle for device %S", dp_name);
+ efi_free_devpath_name(dp_name);
+ return;
+ }
+ printf("Handle %p", handle);
+}
+
static int
command_lsefi(int argc __unused, char *argv[] __unused)
{
@@ -1437,7 +1461,7 @@
EFI_GUID **protocols = NULL;
handle = buffer[i];
- printf("Handle %p", handle);
+ lsefi_print_handle_info(handle);
if (pager_output("\n"))
break;
/* device path */

File Metadata

Mime Type
text/plain
Expires
Mon, Feb 23, 2:38 PM (1 h, 11 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28958894
Default Alt Text
D32991.diff (1 KB)

Event Timeline