File fwupdate-bsc988000-set-a-mode-with-efi_set_variable.patch of Package fwupdate
From 84f2ea96f88751fe01228dcd9fc130cfa0893dfc Mon Sep 17 00:00:00 2001
From: Peter Jones <pjones@redhat.com>
Date: Wed, 2 Mar 2016 10:05:19 -0500
Subject: [PATCH] Always set a mode with efi_set_variable()
Apparently the code in efivar to handle whether mode is there or not
does not always work, so it's going to go away soon.
Signed-off-by: Peter Jones <pjones@redhat.com>
---
linux/libfwup.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/linux/libfwup.c b/linux/libfwup.c
index 6f2f896..d50e4d5 100644
--- a/linux/libfwup.c
+++ b/linux/libfwup.c
@@ -331,7 +331,7 @@ err:
| EFI_VARIABLE_BOOTSERVICE_ACCESS
| EFI_VARIABLE_RUNTIME_ACCESS;
rc = efi_set_variable(varguid, varname, (uint8_t *)info2,
- is, attributes, 0644);
+ is, attributes, 0600);
error = errno;
free(info2);
errno = error;
@@ -797,7 +797,7 @@ do_next:
if (found) {
efi_loadopt_attr_set(loadopt, LOAD_OPTION_ACTIVE);
rc = efi_set_variable(*guid, name, var_data,
- var_data_size, attr);
+ var_data_size, attr, 0600);
free(var_data);
if (rc < 0)
goto out;
@@ -822,7 +822,8 @@ do_next:
opt_size,
EFI_VARIABLE_NON_VOLATILE |
EFI_VARIABLE_BOOTSERVICE_ACCESS |
- EFI_VARIABLE_RUNTIME_ACCESS);
+ EFI_VARIABLE_RUNTIME_ACCESS,
+ 0600);
if (rc < 0)
goto out;
@@ -833,7 +834,8 @@ do_next:
(uint8_t *)&real_boot_next, 2,
EFI_VARIABLE_NON_VOLATILE |
EFI_VARIABLE_BOOTSERVICE_ACCESS |
- EFI_VARIABLE_RUNTIME_ACCESS);
+ EFI_VARIABLE_RUNTIME_ACCESS,
+ 0600);
ret = rc;
out:
--
2.9.0