This commit is contained in:
Tom Callaway 2015-07-10 14:09:02 -04:00
commit cdb0e1ba90
3 changed files with 56 additions and 3 deletions

View File

@ -0,0 +1,12 @@
diff -up libunwind-1.1/include/dwarf_i.h.CVE20153239 libunwind-1.1/include/dwarf_i.h
--- libunwind-1.1/include/dwarf_i.h.CVE20153239 2015-07-10 13:38:36.404996748 -0400
+++ libunwind-1.1/include/dwarf_i.h 2015-07-10 13:39:25.050707613 -0400
@@ -20,7 +20,7 @@
extern const uint8_t dwarf_to_unw_regnum_map[DWARF_REGNUM_MAP_LENGTH];
/* REG is evaluated multiple times; it better be side-effects free! */
# define dwarf_to_unw_regnum(reg) \
- (((reg) <= DWARF_REGNUM_MAP_LENGTH) ? dwarf_to_unw_regnum_map[reg] : 0)
+ (((reg) < DWARF_REGNUM_MAP_LENGTH) ? dwarf_to_unw_regnum_map[reg] : 0)
#endif
#ifdef UNW_LOCAL_ONLY

View File

@ -0,0 +1,15 @@
diff -up libunwind-1.1/src/arm/Gglobal.c.default-to-exidx libunwind-1.1/src/arm/Gglobal.c
--- libunwind-1.1/src/arm/Gglobal.c.default-to-exidx 2015-06-02 10:38:39.733587918 -0400
+++ libunwind-1.1/src/arm/Gglobal.c 2015-06-02 10:38:53.086500142 -0400
@@ -29,7 +29,10 @@ HIDDEN define_lock (arm_lock);
HIDDEN int tdep_init_done;
/* Unwinding methods to use. See UNW_METHOD_ enums */
-HIDDEN int unwi_unwind_method = UNW_ARM_METHOD_ALL;
+/* UNW_ARM_METHOD_ALL starts with UNW_ARM_METHOD_DWARF */
+/* which is never right on Fedora ARM. Default instead */
+/* to UNW_ARM_METHOD_EXIDX. */
+HIDDEN int unwi_unwind_method = UNW_ARM_METHOD_EXIDX;
HIDDEN void
tdep_init (void)

View File

@ -4,7 +4,7 @@
Summary: An unwinding library
Name: libunwind
Version: 1.1
Release: 3%{?dist}
Release: 10%{?dist}
License: BSD
Group: Development/Debuggers
Source: http://download.savannah.gnu.org/releases/libunwind/libunwind-%{version}.tar.gz
@ -12,8 +12,10 @@ Source: http://download.savannah.gnu.org/releases/libunwind/libunwind-%{version}
Patch1: libunwind-disable-setjmp.patch
Patch2: libunwind-aarch64.patch
Patch3: libunwind-fix-ppc64_test_altivec.patch
Patch4: libunwind-arm-default-to-exidx.patch
Patch5: libunwind-1.1-fix-CVE-2015-3239.patch
URL: http://savannah.nongnu.org/projects/libunwind
ExclusiveArch: %{arm} aarch64 hppa ia64 mips ppc ppc64 %{ix86} x86_64
ExclusiveArch: %{arm} aarch64 hppa ia64 mips ppc %{power64} %{ix86} x86_64
BuildRequires: automake libtool autoconf
@ -37,6 +39,8 @@ libunwind.
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1 -b .default-to-exidx
%patch5 -p1 -b .CVE-2015-3239
%build
aclocal
@ -88,10 +92,32 @@ echo ====================TESTSUITE DISABLED=========================
%{_includedir}/libunwind*.h
%changelog
* Mon Jan 20 2014 Kyle McMartin <kmcmarti@redhat.com> 1.1-3
* Fri Jul 10 2015 Tom Callaway <spot@fedoraproject.org> - 1.1-10
- fix CVE-2015-3239
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Tue Jun 2 2015 Tom Callaway <spot@fedoraproject.org> - 1.1-8
- default arm unwinding method to exidx, old default of dwarf never works on Fedora
(#1226806)
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue May 13 2014 Jaromir Capik <jcapik@redhat.com> - 1.1-5
- Replacing ppc64 with the power64 macro (#1051641)
* Mon Jan 20 2014 Kyle McMartin <kmcmarti@redhat.com> 1.1-4
- Link test_ppc64_altivec against libunwind in tests/Makefile.am to fix build
on ppc64.
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Mon Jun 03 2013 Kyle McMartin <kmcmarti@redhat.com> 1.1-2
- Add aarch64 support from backported ac6c0a65. (Mark Salter)
(rhbz#969689)