printenv.c revision 1.1.1.1.4.2 1 1.1.1.1.4.2 rmind /* $NetBSD: printenv.c,v 1.1.1.1.4.2 2014/05/18 17:46:02 rmind Exp $ */
2 1.1.1.1.4.2 rmind
3 1.1.1.1.4.2 rmind #include <efi.h>
4 1.1.1.1.4.2 rmind #include <efilib.h>
5 1.1.1.1.4.2 rmind
6 1.1.1.1.4.2 rmind EFI_STATUS
7 1.1.1.1.4.2 rmind efi_main (EFI_HANDLE image, EFI_SYSTEM_TABLE *systab)
8 1.1.1.1.4.2 rmind {
9 1.1.1.1.4.2 rmind EFI_STATUS status;
10 1.1.1.1.4.2 rmind CHAR16 name[256], *val, fmt[20];
11 1.1.1.1.4.2 rmind EFI_GUID vendor;
12 1.1.1.1.4.2 rmind UINTN size;
13 1.1.1.1.4.2 rmind
14 1.1.1.1.4.2 rmind InitializeLib(image, systab);
15 1.1.1.1.4.2 rmind
16 1.1.1.1.4.2 rmind name[0] = 0;
17 1.1.1.1.4.2 rmind vendor = NullGuid;
18 1.1.1.1.4.2 rmind
19 1.1.1.1.4.2 rmind Print(L"GUID Variable Name Value\n");
20 1.1.1.1.4.2 rmind Print(L"=================================== ==================== ========\n");
21 1.1.1.1.4.2 rmind
22 1.1.1.1.4.2 rmind StrCpy(fmt, L"%.-35g %.-20s %s\n");
23 1.1.1.1.4.2 rmind while (1) {
24 1.1.1.1.4.2 rmind size = sizeof(name);
25 1.1.1.1.4.2 rmind status = uefi_call_wrapper(RT->GetNextVariableName, 3, &size, name, &vendor);
26 1.1.1.1.4.2 rmind if (status != EFI_SUCCESS)
27 1.1.1.1.4.2 rmind break;
28 1.1.1.1.4.2 rmind
29 1.1.1.1.4.2 rmind val = LibGetVariable(name, &vendor);
30 1.1.1.1.4.2 rmind Print(fmt, &vendor, name, val);
31 1.1.1.1.4.2 rmind FreePool(val);
32 1.1.1.1.4.2 rmind }
33 1.1.1.1.4.2 rmind return EFI_SUCCESS;
34 1.1.1.1.4.2 rmind }
35