aboutsummaryrefslogtreecommitdiff
path: root/sysutils/fwupd/files/patch-libfwupdplugin_fu-freebsd-efivars.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysutils/fwupd/files/patch-libfwupdplugin_fu-freebsd-efivars.c')
-rw-r--r--sysutils/fwupd/files/patch-libfwupdplugin_fu-freebsd-efivars.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/sysutils/fwupd/files/patch-libfwupdplugin_fu-freebsd-efivars.c b/sysutils/fwupd/files/patch-libfwupdplugin_fu-freebsd-efivars.c
new file mode 100644
index 000000000000..b8a904985b6a
--- /dev/null
+++ b/sysutils/fwupd/files/patch-libfwupdplugin_fu-freebsd-efivars.c
@@ -0,0 +1,47 @@
+--- libfwupdplugin/fu-freebsd-efivars.c.orig 2025-09-12 09:55:19 UTC
++++ libfwupdplugin/fu-freebsd-efivars.c
+@@ -67,7 +67,7 @@ fu_freebsd_efivars_delete_with_glob(FuEfivars *efivars
+
+ efi_str_to_guid(guid, &guid_to_delete);
+
+- while (efi_get_next_variable_name(&guidt, &name)) {
++ while (efi_get_next_variable_name(&guidt, &name) == 1) {
+ if (memcmp(&guid_to_delete, guidt, sizeof(guid_to_delete)) != 0)
+ continue;
+ if (!g_pattern_match_simple(name, name_glob))
+@@ -87,7 +87,7 @@ fu_freebsd_efivars_exists_guid(const gchar *guid)
+ efi_guid_t test;
+
+ efi_str_to_guid(guid, &test);
+- while (efi_get_next_variable_name(&guidt, &name)) {
++ while (efi_get_next_variable_name(&guidt, &name) == 1) {
+ if (memcmp(&test, guidt, sizeof(test)) == 0) {
+ return TRUE;
+ }
+@@ -129,7 +129,7 @@ fu_freebsd_efivars_get_names(FuEfivars *efivars, const
+ efi_str_to_guid(guid, &test);
+
+ /* find names with matching GUID */
+- while (efi_get_next_variable_name(&guidt, &name)) {
++ while (efi_get_next_variable_name(&guidt, &name) == 1) {
+ if (memcmp(&test, guidt, sizeof(test)) == 0) {
+ g_ptr_array_add(names, g_strdup(name));
+ }
+@@ -156,7 +156,7 @@ fu_freebsd_efivars_space_used(FuEfivars *efivars, GErr
+ efi_guid_t *guidt = NULL;
+ char *name = NULL;
+
+- while (efi_get_next_variable_name(&guidt, &name)) {
++ while (efi_get_next_variable_name(&guidt, &name) == 1) {
+ size_t size = 0;
+ if (efi_get_variable_size(*guidt, name, &size) < 0) {
+ g_set_error_literal(error,
+@@ -184,7 +184,7 @@ fu_freebsd_efivars_set_data(FuEfivars *efivars,
+ efi_guid_t guidt;
+ efi_str_to_guid(guid, &guidt);
+
+- if (efi_set_variable(guidt, name, (guint8 *)data, sz, attr) != 0) {
++ if (efi_set_variable(guidt, name, (guint8 *)data, sz, attr, 0644) != 0) {
+ g_set_error(error,
+ FWUPD_ERROR,
+ FWUPD_ERROR_NOT_SUPPORTED,