0.162-1
- Update to 0.162 (#1170810, #1139815, #1129756, #1020842) - Include elfutils/known-dwarf.h - Drop BuildRequires glibc-headers (#1230468) - Removed integrated upstream patches: - elfutils-0.161-aarch64relro.patch - elfutils-0.161-copyreloc.patch - elfutils-0.161-addralign.patch - elfutils-0.161-ar-long-name.patch - elfutils-0.161-formref-type.patch
This commit is contained in:
parent
832a74e9b9
commit
aa0f506f6b
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,3 +2,4 @@
|
|||||||
/elfutils-0.159.tar.bz2
|
/elfutils-0.159.tar.bz2
|
||||||
/elfutils-0.160.tar.bz2
|
/elfutils-0.160.tar.bz2
|
||||||
/elfutils-0.161.tar.bz2
|
/elfutils-0.161.tar.bz2
|
||||||
|
/elfutils-0.162.tar.bz2
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
commit aea89f2c1ad1cfa2ddd09fb5262f7a0616708baa
|
|
||||||
Author: Mark Wielaard <mjw@redhat.com>
|
|
||||||
Date: Mon Mar 23 15:08:27 2015 +0100
|
|
||||||
|
|
||||||
backends: aarch64 can have _GLOBAL_OFFSET_TABLE_ point anywhere in .got.
|
|
||||||
|
|
||||||
When building with relro aarch64 splits .got in a writable and read-only
|
|
||||||
part. _GLOBAL_OFFSET_TABLE_ points to the first writable symbol, not the
|
|
||||||
start of .got.
|
|
||||||
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=1201778
|
|
||||||
|
|
||||||
Signed-off-by: Mark Wielaard <mjw@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/backends/aarch64_symbol.c b/backends/aarch64_symbol.c
|
|
||||||
index 3fdc9cf..76999e4 100644
|
|
||||||
--- a/backends/aarch64_symbol.c
|
|
||||||
+++ b/backends/aarch64_symbol.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* AArch64 specific symbolic name handling.
|
|
||||||
- Copyright (C) 2013 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2013, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -56,8 +56,11 @@ aarch64_reloc_simple_type (Ebl *ebl __attribute__ ((unused)), int type)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
-/* If this is the _GLOBAL_OFFSET_TABLE_ symbol, then it should point to
|
|
||||||
- .got[0] even if there is a .got.plt section. */
|
|
||||||
+/* If this is the _GLOBAL_OFFSET_TABLE_ symbol, then it should point in
|
|
||||||
+ the .got even if there is a .got.plt section.
|
|
||||||
+ https://sourceware.org/ml/libc-ports/2013-06/msg00057.html
|
|
||||||
+ https://bugzilla.redhat.com/show_bug.cgi?id=1201778
|
|
||||||
+ */
|
|
||||||
bool
|
|
||||||
aarch64_check_special_symbol (Elf *elf, GElf_Ehdr *ehdr, const GElf_Sym *sym,
|
|
||||||
const char *name, const GElf_Shdr *destshdr)
|
|
||||||
@@ -66,7 +69,8 @@ aarch64_check_special_symbol (Elf *elf, GElf_Ehdr *ehdr, const GElf_Sym *sym,
|
|
||||||
&& strcmp (name, "_GLOBAL_OFFSET_TABLE_") == 0)
|
|
||||||
{
|
|
||||||
const char *sname = elf_strptr (elf, ehdr->e_shstrndx, destshdr->sh_name);
|
|
||||||
- if (sname != NULL && strcmp (sname, ".got.plt") == 0)
|
|
||||||
+ if (sname != NULL
|
|
||||||
+ && (strcmp (sname, ".got") == 0 || strcmp (sname, ".got.plt") == 0))
|
|
||||||
{
|
|
||||||
Elf_Scn *scn = NULL;
|
|
||||||
while ((scn = elf_nextscn (elf, scn)) != NULL)
|
|
||||||
@@ -77,7 +81,8 @@ aarch64_check_special_symbol (Elf *elf, GElf_Ehdr *ehdr, const GElf_Sym *sym,
|
|
||||||
{
|
|
||||||
sname = elf_strptr (elf, ehdr->e_shstrndx, shdr->sh_name);
|
|
||||||
if (sname != NULL && strcmp (sname, ".got") == 0)
|
|
||||||
- return sym->st_value == shdr->sh_addr;
|
|
||||||
+ return (sym->st_value >= shdr->sh_addr
|
|
||||||
+ && sym->st_value < shdr->sh_addr + shdr->sh_size);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,53 +0,0 @@
|
|||||||
commit 6f5934c1afa8f34bfb8f86b191ded9af854e757f
|
|
||||||
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
||||||
Date: Sat Feb 7 15:08:20 2015 +0100
|
|
||||||
|
|
||||||
libelf: Consider sh_addralign 0 as 1
|
|
||||||
|
|
||||||
Currently the Koji build for arm32 fails with:
|
|
||||||
extracting debug info from /builddir/build/BUILDROOT/etcd-2.0.0-0.3.rc1.fc22.arm/usr/bin/etcd
|
|
||||||
Failed to write file: invalid section alignment
|
|
||||||
|
|
||||||
This is because the binary etcd
|
|
||||||
http://people.redhat.com/jkratoch/etcdctl.xz
|
|
||||||
contains:
|
|
||||||
Section Headers:
|
|
||||||
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al
|
|
||||||
[11] .rel.plt REL 00459ee0 449ee0 000088 08 A 13 0 0
|
|
||||||
^
|
|
||||||
which corresponds to golang's code:
|
|
||||||
go/src/cmd/ld/elf.c
|
|
||||||
case EM_X86_64:
|
|
||||||
sh = elfshname(".rela.plt");
|
|
||||||
sh->addralign = RegSize;
|
|
||||||
default:
|
|
||||||
sh = elfshname(".rel.plt");
|
|
||||||
<nothing>
|
|
||||||
|
|
||||||
ELF spec says:
|
|
||||||
Values 0 and 1 mean the section has no alignment constraints.
|
|
||||||
and libelf/elf32_updatenull.c really parses it that way at line 204
|
|
||||||
ElfW2(LIBELFBITS,Word) sh_align = shdr->sh_addralign ?: 1;
|
|
||||||
but unfortunately the later line being patched no longer does.
|
|
||||||
|
|
||||||
libelf/
|
|
||||||
2015-02-07 Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
||||||
|
|
||||||
* elf32_updatenull.c (__elfw2(LIBELFBITS,updatenull_wrlock)): Consider
|
|
||||||
sh_addralign 0 as 1.
|
|
||||||
|
|
||||||
Signed-off-by: Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/libelf/elf32_updatenull.c b/libelf/elf32_updatenull.c
|
|
||||||
index be4cea0..5e809b7 100644
|
|
||||||
--- a/libelf/elf32_updatenull.c
|
|
||||||
+++ b/libelf/elf32_updatenull.c
|
|
||||||
@@ -328,7 +328,7 @@ __elfw2(LIBELFBITS,updatenull_wrlock) (Elf *elf, int *change_bop, size_t shnum)
|
|
||||||
enough for the largest alignment required by a data
|
|
||||||
block. */
|
|
||||||
if (unlikely (! powerof2 (shdr->sh_addralign))
|
|
||||||
- || unlikely (shdr->sh_addralign < sh_align))
|
|
||||||
+ || unlikely ((shdr->sh_addralign ?: 1) < sh_align))
|
|
||||||
{
|
|
||||||
__libelf_seterrno (ELF_E_INVALID_ALIGN);
|
|
||||||
return -1;
|
|
@ -1,51 +0,0 @@
|
|||||||
commit 147018e729e7c22eeabf15b82d26e4bf68a0d18e
|
|
||||||
Author: Alexander Cherepanov <cherepan@mccme.ru>
|
|
||||||
Date: Sun Dec 28 19:57:19 2014 +0300
|
|
||||||
|
|
||||||
libelf: Fix dir traversal vuln in ar extraction.
|
|
||||||
|
|
||||||
read_long_names terminates names at the first '/' found but then skips
|
|
||||||
one character without checking (it's supposed to be '\n'). Hence the
|
|
||||||
next name could start with any character including '/'. This leads to
|
|
||||||
a directory traversal vulnerability at the time the contents of the
|
|
||||||
archive is extracted.
|
|
||||||
|
|
||||||
The danger is mitigated by the fact that only one '/' is possible in a
|
|
||||||
resulting filename and only in the leading position. Hence only files
|
|
||||||
in the root directory can be written via this vuln and only when ar is
|
|
||||||
executed as root.
|
|
||||||
|
|
||||||
The fix for the vuln is to not skip any characters while looking
|
|
||||||
for '/'.
|
|
||||||
|
|
||||||
Signed-off-by: Alexander Cherepanov <cherepan@mccme.ru>
|
|
||||||
|
|
||||||
diff --git a/libelf/ChangeLog b/libelf/ChangeLog
|
|
||||||
index 3b88d03..447c354 100644
|
|
||||||
--- a/libelf/ChangeLog
|
|
||||||
+++ b/libelf/ChangeLog
|
|
||||||
@@ -1,3 +1,8 @@
|
|
||||||
+2014-12-28 Alexander Cherepanov <cherepan@mccme.ru>
|
|
||||||
+
|
|
||||||
+ * elf_begin.c (read_long_names): Don't miss '/' right after
|
|
||||||
+ another '/'. Fixes a dir traversal vuln in ar extraction.
|
|
||||||
+
|
|
||||||
2014-12-18 Ulrich Drepper <drepper@gmail.com>
|
|
||||||
|
|
||||||
* Makefile.am: Suppress output of textrel_check command.
|
|
||||||
diff --git a/libelf/elf_begin.c b/libelf/elf_begin.c
|
|
||||||
index 30abe0b..cd3756c 100644
|
|
||||||
--- a/libelf/elf_begin.c
|
|
||||||
+++ b/libelf/elf_begin.c
|
|
||||||
@@ -749,10 +749,7 @@ read_long_names (Elf *elf)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* NUL-terminate the string. */
|
|
||||||
- *runp = '\0';
|
|
||||||
-
|
|
||||||
- /* Skip the NUL byte and the \012. */
|
|
||||||
- runp += 2;
|
|
||||||
+ *runp++ = '\0';
|
|
||||||
|
|
||||||
/* A sanity check. Somebody might have generated invalid
|
|
||||||
archive. */
|
|
@ -1,233 +0,0 @@
|
|||||||
commit cc4e10fb398d40fb90e15056d808a596ef893cc3
|
|
||||||
Author: Mark Wielaard <mjw@redhat.com>
|
|
||||||
Date: Mon Mar 9 22:43:08 2015 +0100
|
|
||||||
|
|
||||||
backends: COPY relocations can also happen in ET_DYN.
|
|
||||||
|
|
||||||
In particular COPY relocations might happen in PIE executables,
|
|
||||||
which are ET_DYN.
|
|
||||||
|
|
||||||
Found on Fedora Rawhide with run-elflint-self.sh.
|
|
||||||
|
|
||||||
Signed-off-by: Mark Wielaard <mjw@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/backends/aarch64_reloc.def b/backends/aarch64_reloc.def
|
|
||||||
index 36d29e6..2e16e98 100644
|
|
||||||
--- a/backends/aarch64_reloc.def
|
|
||||||
+++ b/backends/aarch64_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for AArch64. -*- C -*-
|
|
||||||
- Copyright (C) 2013, 2014 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2013, 2014, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -30,7 +30,7 @@
|
|
||||||
|
|
||||||
RELOC_TYPE (ABS64, REL|EXEC|DYN)
|
|
||||||
RELOC_TYPE (ABS32, REL|EXEC|DYN)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JUMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/arm_reloc.def b/backends/arm_reloc.def
|
|
||||||
index 4b7894b..113648e 100644
|
|
||||||
--- a/backends/arm_reloc.def
|
|
||||||
+++ b/backends/arm_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for arm. -*- C -*-
|
|
||||||
- Copyright (C) 2005-2010, 2014 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2005-2010, 2014, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -48,7 +48,7 @@ RELOC_TYPE (THM_XPC22, REL)
|
|
||||||
RELOC_TYPE (TLS_DTPMOD32, EXEC|DYN)
|
|
||||||
RELOC_TYPE (TLS_DTPOFF32, EXEC|DYN)
|
|
||||||
RELOC_TYPE (TLS_TPOFF32, EXEC|DYN)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JUMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/i386_reloc.def b/backends/i386_reloc.def
|
|
||||||
index bd273b3..de3575d 100644
|
|
||||||
--- a/backends/i386_reloc.def
|
|
||||||
+++ b/backends/i386_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for i386. -*- C -*-
|
|
||||||
- Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -29,7 +29,7 @@
|
|
||||||
/* NAME, REL|EXEC|DYN */
|
|
||||||
|
|
||||||
RELOC_TYPE (NONE, 0)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (32, REL|EXEC|DYN)
|
|
||||||
RELOC_TYPE (PC32, REL|EXEC|DYN)
|
|
||||||
RELOC_TYPE (GOT32, REL)
|
|
||||||
diff --git a/backends/ia64_reloc.def b/backends/ia64_reloc.def
|
|
||||||
index 9e058c8..2428925 100644
|
|
||||||
--- a/backends/ia64_reloc.def
|
|
||||||
+++ b/backends/ia64_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for ia64. -*- C -*-
|
|
||||||
- Copyright (C) 2005, 2006 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2005, 2006, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -88,7 +88,7 @@ RELOC_TYPE (PCREL22, REL)
|
|
||||||
RELOC_TYPE (PCREL64I, REL)
|
|
||||||
RELOC_TYPE (IPLTMSB, REL|EXEC|DYN)
|
|
||||||
RELOC_TYPE (IPLTLSB, REL|EXEC|DYN)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (SUB, 0)
|
|
||||||
RELOC_TYPE (LTOFF22X, REL)
|
|
||||||
RELOC_TYPE (LDXMOV, REL)
|
|
||||||
diff --git a/backends/ppc64_reloc.def b/backends/ppc64_reloc.def
|
|
||||||
index 3a693cf..15a73ba 100644
|
|
||||||
--- a/backends/ppc64_reloc.def
|
|
||||||
+++ b/backends/ppc64_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for ppc64. -*- C -*-
|
|
||||||
- Copyright (C) 2005 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2005, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -46,7 +46,7 @@ RELOC_TYPE (GOT16, REL)
|
|
||||||
RELOC_TYPE (GOT16_LO, REL)
|
|
||||||
RELOC_TYPE (GOT16_HI, REL)
|
|
||||||
RELOC_TYPE (GOT16_HA, REL)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/ppc_reloc.def b/backends/ppc_reloc.def
|
|
||||||
index dc963a0..3723a9c 100644
|
|
||||||
--- a/backends/ppc_reloc.def
|
|
||||||
+++ b/backends/ppc_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for ppc. -*- C -*-
|
|
||||||
- Copyright (C) 2005 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2005, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -47,7 +47,7 @@ RELOC_TYPE (GOT16_LO, REL)
|
|
||||||
RELOC_TYPE (GOT16_HI, REL)
|
|
||||||
RELOC_TYPE (GOT16_HA, REL)
|
|
||||||
RELOC_TYPE (PLTREL24, REL)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/s390_reloc.def b/backends/s390_reloc.def
|
|
||||||
index b4686a3..cdef9eb 100644
|
|
||||||
--- a/backends/s390_reloc.def
|
|
||||||
+++ b/backends/s390_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for s390. -*- C -*-
|
|
||||||
- Copyright (C) 2005, 2006 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2005, 2006, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -37,7 +37,7 @@ RELOC_TYPE (PC32, REL|EXEC|DYN)
|
|
||||||
RELOC_TYPE (GOT12, REL)
|
|
||||||
RELOC_TYPE (GOT32, REL)
|
|
||||||
RELOC_TYPE (PLT32, REL)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/sh_reloc.def b/backends/sh_reloc.def
|
|
||||||
index 66a5a9d..aded361 100644
|
|
||||||
--- a/backends/sh_reloc.def
|
|
||||||
+++ b/backends/sh_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for SH. -*- C -*-
|
|
||||||
- Copyright (C) 2005 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2005, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -59,7 +59,7 @@ RELOC_TYPE (TLS_DTPOFF32, DYN)
|
|
||||||
RELOC_TYPE (TLS_TPOFF32, DYN)
|
|
||||||
RELOC_TYPE (GOT32, REL)
|
|
||||||
RELOC_TYPE (PLT32, REL)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/sparc_reloc.def b/backends/sparc_reloc.def
|
|
||||||
index c39b0fa..2aeb129 100644
|
|
||||||
--- a/backends/sparc_reloc.def
|
|
||||||
+++ b/backends/sparc_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for sparc. -*- C -*-
|
|
||||||
- Copyright (C) 2009 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2009, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -47,7 +47,7 @@ RELOC_TYPE (GOT22, REL)
|
|
||||||
RELOC_TYPE (PC10, REL)
|
|
||||||
RELOC_TYPE (PC22, REL)
|
|
||||||
RELOC_TYPE (WPLT30, REL)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/tilegx_reloc.def b/backends/tilegx_reloc.def
|
|
||||||
index 9736286..1018110 100644
|
|
||||||
--- a/backends/tilegx_reloc.def
|
|
||||||
+++ b/backends/tilegx_reloc.def
|
|
||||||
@@ -1,5 +1,6 @@
|
|
||||||
/* List the relocation types for tilegx. -*- C -*-
|
|
||||||
Copyright (C) 2012 Tilera Corporation
|
|
||||||
+ Copyright (C) 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -44,7 +45,7 @@ RELOC_TYPE (HW3, REL)
|
|
||||||
RELOC_TYPE (HW0_LAST, REL)
|
|
||||||
RELOC_TYPE (HW1_LAST, REL)
|
|
||||||
RELOC_TYPE (HW2_LAST, REL)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
||||||
diff --git a/backends/x86_64_reloc.def b/backends/x86_64_reloc.def
|
|
||||||
index 8ed98f6..ad84efa 100644
|
|
||||||
--- a/backends/x86_64_reloc.def
|
|
||||||
+++ b/backends/x86_64_reloc.def
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* List the relocation types for x86-64. -*- C -*-
|
|
||||||
- Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009 Red Hat, Inc.
|
|
||||||
+ Copyright (C) 2000, 2001, 2002, 2003, 2005, 2009, 2015 Red Hat, Inc.
|
|
||||||
This file is part of elfutils.
|
|
||||||
|
|
||||||
This file is free software; you can redistribute it and/or modify
|
|
||||||
@@ -33,7 +33,7 @@ RELOC_TYPE (64, REL|EXEC|DYN)
|
|
||||||
RELOC_TYPE (PC32, REL|EXEC|DYN)
|
|
||||||
RELOC_TYPE (GOT32, REL)
|
|
||||||
RELOC_TYPE (PLT32, REL)
|
|
||||||
-RELOC_TYPE (COPY, EXEC)
|
|
||||||
+RELOC_TYPE (COPY, EXEC|DYN)
|
|
||||||
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (JUMP_SLOT, EXEC|DYN)
|
|
||||||
RELOC_TYPE (RELATIVE, EXEC|DYN)
|
|
@ -1,24 +0,0 @@
|
|||||||
commit 7c71382294af69f075c891a3418906c842491e4c
|
|
||||||
Author: Jason P. Leasure <jpleasu@super.org>
|
|
||||||
Date: Wed Jan 14 09:26:55 2015 -0500
|
|
||||||
|
|
||||||
libdw: fix offset for sig8 lookup in dwarf_formref_die
|
|
||||||
|
|
||||||
The type_offset of a type unit header is relative to the beginning
|
|
||||||
of the type unit header.
|
|
||||||
|
|
||||||
Signed-off-by: Jason P. Leasure <jpleasu@super.org>
|
|
||||||
|
|
||||||
diff --git a/libdw/dwarf_formref_die.c b/libdw/dwarf_formref_die.c
|
|
||||||
index 63f6697..8b92e22 100644
|
|
||||||
--- a/libdw/dwarf_formref_die.c
|
|
||||||
+++ b/libdw/dwarf_formref_die.c
|
|
||||||
@@ -95,7 +95,7 @@ dwarf_formref_die (attr, result)
|
|
||||||
|
|
||||||
datap = cu->dbg->sectiondata[IDX_debug_types]->d_buf;
|
|
||||||
size = cu->dbg->sectiondata[IDX_debug_types]->d_size;
|
|
||||||
- offset = cu->type_offset;
|
|
||||||
+ offset = cu->start + cu->type_offset;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
|||||||
Name: elfutils
|
Name: elfutils
|
||||||
Summary: A collection of utilities and DSOs to handle compiled objects
|
Summary: A collection of utilities and DSOs to handle compiled objects
|
||||||
Version: 0.161
|
Version: 0.162
|
||||||
%global baserelease 8
|
%global baserelease 1
|
||||||
URL: https://fedorahosted.org/elfutils/
|
URL: https://fedorahosted.org/elfutils/
|
||||||
%global source_url http://fedorahosted.org/releases/e/l/elfutils/%{version}/
|
%global source_url http://fedorahosted.org/releases/e/l/elfutils/%{version}/
|
||||||
License: GPLv3+ and (GPLv2+ or LGPLv3+)
|
License: GPLv3+ and (GPLv2+ or LGPLv3+)
|
||||||
@ -46,14 +46,6 @@ Source: %{?source_url}%{name}-%{version}.tar.bz2
|
|||||||
|
|
||||||
Patch1: %{?source_url}elfutils-portability-%{version}.patch
|
Patch1: %{?source_url}elfutils-portability-%{version}.patch
|
||||||
|
|
||||||
Patch2: elfutils-0.161-ar-long-name.patch
|
|
||||||
# libdw: fix offset for sig8 lookup in dwarf_formref_die
|
|
||||||
Patch3: elfutils-0.161-formref-type.patch
|
|
||||||
# rhbz#1189928 - Consider sh_addralign 0 as 1
|
|
||||||
Patch4: elfutils-0.161-addralign.patch
|
|
||||||
Patch5: elfutils-0.161-copyreloc.patch
|
|
||||||
Patch6: elfutils-0.161-aarch64relro.patch
|
|
||||||
|
|
||||||
%if !%{compat}
|
%if !%{compat}
|
||||||
Release: %{baserelease}%{?dist}
|
Release: %{baserelease}%{?dist}
|
||||||
%else
|
%else
|
||||||
@ -73,8 +65,6 @@ BuildRequires: flex >= 2.5.4a
|
|||||||
BuildRequires: bzip2
|
BuildRequires: bzip2
|
||||||
%if !%{compat}
|
%if !%{compat}
|
||||||
BuildRequires: gcc >= 3.4
|
BuildRequires: gcc >= 3.4
|
||||||
# Need <byteswap.h> that gives unsigned bswap_16 etc.
|
|
||||||
BuildRequires: glibc-headers >= 2.3.4-11
|
|
||||||
%else
|
%else
|
||||||
BuildRequires: gcc >= 3.2
|
BuildRequires: gcc >= 3.2
|
||||||
%endif
|
%endif
|
||||||
@ -215,12 +205,6 @@ sed -i.scanf-m -e 's/%m/%a/g' src/addr2line.c tests/line2addr.c
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%patch2 -p1 -b .ar_long_name
|
|
||||||
%patch3 -p1 -b .formref_type
|
|
||||||
%patch4 -p1 -b .addralign
|
|
||||||
%patch5 -p1 -b .copyreloc
|
|
||||||
%patch6 -p1 -b .aarch64relro
|
|
||||||
|
|
||||||
find . -name \*.sh ! -perm -0100 -print | xargs chmod +x
|
find . -name \*.sh ! -perm -0100 -print | xargs chmod +x
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -314,6 +298,7 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||||||
%{_includedir}/dwarf.h
|
%{_includedir}/dwarf.h
|
||||||
%dir %{_includedir}/elfutils
|
%dir %{_includedir}/elfutils
|
||||||
%{_includedir}/elfutils/elf-knowledge.h
|
%{_includedir}/elfutils/elf-knowledge.h
|
||||||
|
%{_includedir}/elfutils/known-dwarf.h
|
||||||
%{_includedir}/elfutils/libasm.h
|
%{_includedir}/elfutils/libasm.h
|
||||||
%{_includedir}/elfutils/libebl.h
|
%{_includedir}/elfutils/libebl.h
|
||||||
%{_includedir}/elfutils/libdw.h
|
%{_includedir}/elfutils/libdw.h
|
||||||
@ -348,6 +333,17 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||||||
%{_libdir}/libelf.a
|
%{_libdir}/libelf.a
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jun 11 2015 Mark Wielaard <mjw@redhat.com> - 0.162-1
|
||||||
|
- Update to 0.162 (#1170810, #1139815, #1129756, #1020842)
|
||||||
|
- Include elfutils/known-dwarf.h
|
||||||
|
- Drop BuildRequires glibc-headers (#1230468)
|
||||||
|
- Removed integrated upstream patches:
|
||||||
|
- elfutils-0.161-aarch64relro.patch
|
||||||
|
- elfutils-0.161-copyreloc.patch
|
||||||
|
- elfutils-0.161-addralign.patch
|
||||||
|
- elfutils-0.161-ar-long-name.patch
|
||||||
|
- elfutils-0.161-formref-type.patch
|
||||||
|
|
||||||
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 0.161-8
|
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 0.161-8
|
||||||
- Rebuilt for GCC 5 C++11 ABI change
|
- Rebuilt for GCC 5 C++11 ABI change
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user