commit gnu-efi for openSUSE:Factory
Hello community, here is the log from the commit of package gnu-efi for openSUSE:Factory checked in at 2018-11-28 11:09:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gnu-efi (Old) and /work/SRC/openSUSE:Factory/.gnu-efi.new.19453 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "gnu-efi" Wed Nov 28 11:09:07 2018 rev:29 rq:641271 version:3.0.8 Changes: -------- --- /work/SRC/openSUSE:Factory/gnu-efi/gnu-efi.changes 2018-03-24 16:12:15.806238528 +0100 +++ /work/SRC/openSUSE:Factory/.gnu-efi.new.19453/gnu-efi.changes 2018-11-28 11:09:09.951251812 +0100 @@ -1,0 +2,38 @@ +Thu Oct 11 08:15:40 UTC 2018 - Gary Ching-Pang Lin <glin@suse.com> + +- Add gnu-efi-fix-strncpy-stpncpy-strncat.patch to fix StrnCpy(), + StpnCpy(), and StrnCat() + +------------------------------------------------------------------- +Fri Oct 5 09:19:44 UTC 2018 - Gary Ching-Pang Lin <glin@suse.com> + +- Update to gnu-efi 3.0.8 + + Add debug helper applications + + Call ar in deterministic mode + + Nerf -Werror=pragma away + + Make ARCH overrideable on the command line + + Add %D to print device paths + + gnu-efi: add some more common string functions + + Fix typedef of EFI_PXE_BASE_CODE + + Work around -Werror=maybe-uninitialized not being very bright + + Fix arm build paths in the makefile + + Fix some types gcc doesn't like + + Move memcpy/memset definition to global init.c + + Use ARFLAGS when invoking ar + + Disable AVX instruction set on IA32 and x86_64 platforms + + Declare EFI_PXE_BASE_CODE correctly + + inserts the libefi.a objects in a stable order + + fallthrough attribute to notify gcc7 + + x86-64/efibind: sanitize ms-abi cpp conditionals + + Add Exit() library function which calls BS->Exit() + + don't expect non-x86 compilers to compile x86 asm. also remove + what looks like garbage inside an #if 0 block + + For compatibility with an upcoming EDK2 feature +- Drop upstreamed patches + + gnu-efi-ar-stable-order.patch + + gnu-efi-fix-efi-pxe-base-code.patch + + gnu-efi-fix-switch-warning.patch +- Drop gnu-efi-fix-armv6-and-armv7-detection.patch since upstream + supports ARM officially + +------------------------------------------------------------------- Old: ---- gnu-efi-3.0.5.tar.bz2 gnu-efi-ar-stable-order.patch gnu-efi-fix-armv6-and-armv7-detection.patch gnu-efi-fix-efi-pxe-base-code.patch gnu-efi-fix-switch-warning.patch New: ---- gnu-efi-3.0.8.tar.bz2 gnu-efi-fix-strncpy-stpncpy-strncat.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gnu-efi.spec ++++++ --- /var/tmp/diff_new_pack.Ub7ddU/_old 2018-11-28 11:09:10.379251230 +0100 +++ /var/tmp/diff_new_pack.Ub7ddU/_new 2018-11-28 11:09:10.383251224 +0100 @@ -17,18 +17,15 @@ Name: gnu-efi -Version: 3.0.5 +Version: 3.0.8 Release: 0 Summary: Library for EFI Applications -License: BSD-3-Clause and GPL-2.0+ +License: BSD-3-Clause AND GPL-2.0-or-later Group: Development/Libraries/Other Url: http://sourceforge.net/projects/gnu-efi Source: http://sourceforge.net/projects/gnu-efi/files/gnu-efi-%{version}.tar.bz2 Source1: %{name}-rpmlintrc -Patch1: gnu-efi-fix-switch-warning.patch -Patch2: gnu-efi-ar-stable-order.patch -Patch3: gnu-efi-fix-efi-pxe-base-code.patch -Patch4: gnu-efi-fix-armv6-and-armv7-detection.patch +Patch1: %{name}-fix-strncpy-stpncpy-strncat.patch BuildRequires: kernel-source BuildRoot: %{_tmppath}/%{name}-%{version}-build ExclusiveArch: ia64 %ix86 x86_64 aarch64 %arm @@ -41,9 +38,6 @@ %prep %setup -q %patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p0 %build ########################## ++++++ gnu-efi-3.0.5.tar.bz2 -> gnu-efi-3.0.8.tar.bz2 ++++++ ++++ 1879 lines of diff (skipped) ++++++ gnu-efi-fix-strncpy-stpncpy-strncat.patch ++++++
From 85f1c797f6935223205159dd108e4871b2e55500 Mon Sep 17 00:00:00 2001 From: Pete Batard <pete@akeo.ie> Date: Tue, 24 Apr 2018 13:45:11 +0100 Subject: [PATCH 1/4] Fix conversion from 'UINTN' to 'UINT8' warnings
* MSVC generates two of the following in rtstr.c: warning C4244: 'function': conversion from 'UINTN' to 'UINT8', possible loss of data --- lib/runtime/rtstr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/runtime/rtstr.c b/lib/runtime/rtstr.c index 80ff489..dcc1a2a 100644 --- a/lib/runtime/rtstr.c +++ b/lib/runtime/rtstr.c @@ -71,7 +71,7 @@ RtStrnCpy ( { UINTN Size = RtStrnLen(Src, Len); if (Size != Len) - RtSetMem(Dest + Len, '\0', (Len - Size) * sizeof(CHAR16)); + RtSetMem(Dest + Len, '\0', (UINT8)((Len - Size) * sizeof(CHAR16))); RtCopyMem(Dest, Src, Size * sizeof(CHAR16)); } @@ -107,7 +107,7 @@ RtStpnCpy ( { UINTN Size = RtStrnLen(Src, Len); if (Size != Len) - RtSetMem(Dest + Len, '\0', (Len - Size) * sizeof(CHAR16)); + RtSetMem(Dest + Len, '\0', (UINT8)((Len - Size) * sizeof(CHAR16))); RtCopyMem(Dest, Src, Size * sizeof(CHAR16)); return Dest + Size; } -- 2.19.0
From 4889dc561f905406f3d0a648321589bd47703fdc Mon Sep 17 00:00:00 2001 From: Gary Lin <glin@suse.com> Date: Tue, 9 Oct 2018 18:35:21 +0800 Subject: [PATCH 2/4] Set '\0' properly in StrnCpy()
The arguments to SetMem() were wrong. Besides, SetMem() should start at "Dest + Size" since "Size" will be smaller than "Len" if they are not equal. Signed-off-by: Gary Lin <glin@suse.com> --- lib/runtime/rtstr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/runtime/rtstr.c b/lib/runtime/rtstr.c index dcc1a2a..949f938 100644 --- a/lib/runtime/rtstr.c +++ b/lib/runtime/rtstr.c @@ -71,7 +71,7 @@ RtStrnCpy ( { UINTN Size = RtStrnLen(Src, Len); if (Size != Len) - RtSetMem(Dest + Len, '\0', (UINT8)((Len - Size) * sizeof(CHAR16))); + RtSetMem(Dest + Size, (Len - Size) * sizeof(CHAR16), '\0'); RtCopyMem(Dest, Src, Size * sizeof(CHAR16)); } -- 2.19.0
From 38a9921bc39fea25b0ca62d6eb1595bf15d05839 Mon Sep 17 00:00:00 2001 From: Gary Lin <glin@suse.com> Date: Thu, 11 Oct 2018 12:02:27 +0800 Subject: [PATCH 3/4] Implement StrnCat() without StrnCpy()
StrnCpy() doesn't guarantee the dest string will be null-terminated, so we shouldn't use StrnCpy(). Signed-off-by: Gary Lin <glin@suse.com> --- lib/runtime/rtstr.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/runtime/rtstr.c b/lib/runtime/rtstr.c index 949f938..fe65d96 100644 --- a/lib/runtime/rtstr.c +++ b/lib/runtime/rtstr.c @@ -126,7 +126,7 @@ RtStrCat ( } #ifndef __GNUC__ -#pragma RUNTIME_CODE(RtStrCat) +#pragma RUNTIME_CODE(RtStrnCat) #endif VOID RUNTIMEFUNCTION @@ -136,7 +136,12 @@ RtStrnCat ( IN UINTN Len ) { - RtStrnCpy(Dest+StrLen(Dest), Src, Len); + UINTN DestSize, Size; + + DestSize = StrLen(Dest); + Size = RtStrnLen(Src, Len); + RtCopyMem(Dest + DestSize, Src, Size * sizeof(CHAR16)); + Dest[DestSize + Size] = '\0'; } #ifndef __GNUC__ -- 2.19.0
From 134587ea094a4974e5773bf228f6436535f50f1a Mon Sep 17 00:00:00 2001 From: Gary Lin <glin@suse.com> Date: Thu, 11 Oct 2018 16:10:26 +0800 Subject: [PATCH 4/4] Set '\0' properly in StpnCpy()
The arguments to SetMem() were wrong. Besides, SetMem() should start at "Dest + Size" since "Size" will be smaller than "Len" if they are not equal. Signed-off-by: Gary Lin <glin@suse.com> --- lib/runtime/rtstr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/runtime/rtstr.c b/lib/runtime/rtstr.c index fe65d96..73965ca 100644 --- a/lib/runtime/rtstr.c +++ b/lib/runtime/rtstr.c @@ -94,7 +94,7 @@ RtStpCpy ( } #ifndef __GNUC__ -#pragma RUNTIME_CODE(RtStrnCpy) +#pragma RUNTIME_CODE(RtStpnCpy) #endif CHAR16 * RUNTIMEFUNCTION @@ -107,7 +107,7 @@ RtStpnCpy ( { UINTN Size = RtStrnLen(Src, Len); if (Size != Len) - RtSetMem(Dest + Len, '\0', (UINT8)((Len - Size) * sizeof(CHAR16))); + RtSetMem(Dest + Size, (Len - Size) * sizeof(CHAR16), '\0'); RtCopyMem(Dest, Src, Size * sizeof(CHAR16)); return Dest + Size; } -- 2.19.0
participants (1)
-
root