summaryrefslogtreecommitdiff
path: root/gnu-efi/apps/unsetdbg.c
diff options
context:
space:
mode:
Diffstat (limited to 'gnu-efi/apps/unsetdbg.c')
-rw-r--r--gnu-efi/apps/unsetdbg.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu-efi/apps/unsetdbg.c b/gnu-efi/apps/unsetdbg.c
new file mode 100644
index 00000000..731e09b1
--- /dev/null
+++ b/gnu-efi/apps/unsetdbg.c
@@ -0,0 +1,37 @@
+#include <efi.h>
+#include <efilib.h>
+
+EFI_GUID GRUB_EFI_GRUB_VARIABLE_GUID = {0x91376aff,0xcba6,0x42be,{0x94,0x9d,0x06,0xfd,0xe8,0x11,0x28,0xe8}};
+EFI_GUID SHIM_GUID = {0x605dab50,0xe046,0x4300,{0xab,0xb6,0x3d,0xd8,0x10,0xdd,0x8b,0x23}};
+
+char grubenv[] = "# GRUB Environment Block\n\
+debug=all\n\
+#############################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################";
+
+EFI_STATUS
+efi_main (EFI_HANDLE image, EFI_SYSTEM_TABLE *systab)
+{
+ EFI_STATUS status;
+ UINT8 data = 1;
+ InitializeLib(image, systab);
+
+ status = RT->SetVariable(L"SHIM_DEBUG", &SHIM_GUID,
+ EFI_VARIABLE_NON_VOLATILE |
+ EFI_VARIABLE_BOOTSERVICE_ACCESS |
+ EFI_VARIABLE_RUNTIME_ACCESS,
+ 0, &data);
+ if (EFI_ERROR(status))
+ Print(L"SetVariable failed: %r\n", status);
+
+#if 0
+ status = RT->SetVariable(L"GRUB_ENV", &SHIM_GUID,
+ EFI_VARIABLE_NON_VOLATILE |
+ EFI_VARIABLE_BOOTSERVICE_ACCESS |
+ EFI_VARIABLE_RUNTIME_ACCESS,
+ sizeof(grubenv)-1, grubenv);
+ if (EFI_ERROR(status))
+ Print(L"SetVariable(GRUB_ENV) failed: %r\n", status);
+#endif
+
+ return EFI_SUCCESS;
+}