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