diff --git a/efibootmgr-16-efidp_format_device_path-argfix.patch b/efibootmgr-16-efidp_format_device_path-argfix.patch new file mode 100644 index 0000000..15741e2 --- /dev/null +++ b/efibootmgr-16-efidp_format_device_path-argfix.patch @@ -0,0 +1,51 @@ +diff -r -u -x .git ../efibootmgr-16.orig/src/efibootdump.c ./src/efibootdump.c +--- ../efibootmgr-16.orig/src/efibootdump.c 2018-04-09 15:38:51.000000000 -0500 ++++ ./src/efibootdump.c 2020-08-06 15:27:27.679192698 -0500 +@@ -67,8 +67,8 @@ + text_path = alloca(text_path_len); + if (!text_path) + error(100, "Couldn't allocate memory"); +- rc = efidp_format_device_path(text_path, text_path_len, +- dp, pathlen); ++ rc = efidp_format_device_path((unsigned char *)text_path, ++ text_path_len, dp, pathlen); + if (rc < 0) { + printf(""); + return; +diff -r -u -x .git ../efibootmgr-16.orig/src/efibootmgr.c ./src/efibootmgr.c +--- ../efibootmgr-16.orig/src/efibootmgr.c 2018-04-09 15:38:51.000000000 -0500 ++++ ./src/efibootmgr.c 2020-08-06 15:27:12.433089400 -0500 +@@ -941,8 +941,8 @@ + pathlen = efi_loadopt_pathlen(load_option, + boot->data_size); + dp = efi_loadopt_path(load_option, boot->data_size); +- rc = efidp_format_device_path(text_path, text_path_len, +- dp, pathlen); ++ rc = efidp_format_device_path((unsigned char *)text_path, ++ text_path_len, dp, pathlen); + if (rc < 0) + error(18, "Could not parse device path"); + rc += 1; +@@ -952,8 +952,8 @@ + if (!text_path) + error(19, "Could not parse device path"); + +- rc = efidp_format_device_path(text_path, text_path_len, +- dp, pathlen); ++ rc = efidp_format_device_path((unsigned char *)text_path, ++ text_path_len, dp, pathlen); + if (rc < 0) + error(20, "Could not parse device path"); + printf("\t%s", text_path); +diff -r -u -x .git ../efibootmgr-16.orig/src/eficonman.c ./src/eficonman.c +--- ../efibootmgr-16.orig/src/eficonman.c 2018-04-09 15:38:51.000000000 -0500 ++++ ./src/eficonman.c 2020-08-06 15:08:19.614514403 -0500 +@@ -76,7 +76,7 @@ + dp = whole_dp; + while (dp) { + ssize_t sz, ssz; +- char *s = NULL; ++ unsigned char *s = NULL; + + if (efidp_is_multiinstance(dp)) { + sz = efidp_instance_size(dp); diff --git a/efibootmgr.spec b/efibootmgr.spec index fb7d9d9..03368f0 100644 --- a/efibootmgr.spec +++ b/efibootmgr.spec @@ -21,6 +21,10 @@ Obsoletes: elilo <= 3.6-6 Source0: https://github.com/rhboot/%{name}/releases/download/%{name}-%{version}/%{name}-%{version}.tar.bz2 +# Fixes to compiler errors manually cherry picked from upstream commit +# https://github.com/rhboot/efibootmgr/commit/e8ce9fecebd15adb4c60a0678d4c417afe06dde4 +Patch0: efibootmgr-16-efidp_format_device_path-argfix.patch + %description %{name} displays and allows the user to edit the Intel Extensible Firmware Interface (EFI) Boot Manager variables. Additional @@ -48,6 +52,9 @@ rm -rf %{buildroot} %doc README %changelog +* Thu Aug 06 2020 Merlin Mathesius - 16-9 +- FTBFS fixes for Rawhide and ELN + * Sat Aug 01 2020 Fedora Release Engineering - 16-9 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild