Home | History | Annotate | Line # | Download | only in apps
      1 /*	$NetBSD: unsetdbg.c,v 1.1.1.1 2018/08/16 18:17:47 jmcneill Exp $	*/
      2 
      3 #include <efi.h>
      4 #include <efilib.h>
      5 
      6 EFI_GUID GRUB_EFI_GRUB_VARIABLE_GUID = {0x91376aff,0xcba6,0x42be,{0x94,0x9d,0x06,0xfd,0xe8,0x11,0x28,0xe8}};
      7 EFI_GUID SHIM_GUID = {0x605dab50,0xe046,0x4300,{0xab,0xb6,0x3d,0xd8,0x10,0xdd,0x8b,0x23}};
      8 
      9 char grubenv[] = "# GRUB Environment Block\n\
     10 debug=all\n\
     11 #############################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################";
     12 
     13 EFI_STATUS
     14 efi_main (EFI_HANDLE image, EFI_SYSTEM_TABLE *systab)
     15 {
     16 	EFI_STATUS status;
     17 	UINT8 data = 1;
     18 	InitializeLib(image, systab);
     19 
     20 	status = RT->SetVariable(L"SHIM_DEBUG", &SHIM_GUID,
     21 				 EFI_VARIABLE_NON_VOLATILE |
     22 				 EFI_VARIABLE_BOOTSERVICE_ACCESS |
     23 				 EFI_VARIABLE_RUNTIME_ACCESS,
     24 				 0, &data);
     25 	if (EFI_ERROR(status))
     26 		Print(L"SetVariable failed: %r\n", status);
     27 
     28 #if 0
     29 	status = RT->SetVariable(L"GRUB_ENV", &SHIM_GUID,
     30 				 EFI_VARIABLE_NON_VOLATILE |
     31 				 EFI_VARIABLE_BOOTSERVICE_ACCESS |
     32 				 EFI_VARIABLE_RUNTIME_ACCESS,
     33 				 sizeof(grubenv)-1, grubenv);
     34 	if (EFI_ERROR(status))
     35 		Print(L"SetVariable(GRUB_ENV) failed: %r\n", status);
     36 #endif
     37 
     38 	return EFI_SUCCESS;
     39 }
     40