1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-09 05:29:32 +00:00

elfutils: Add GNU_HASH support to elf*_xlatetof

Add GNU_HASH and LIB types to the size table used by elf*_xlatetof in order
to avoid a divide by zero error.
Signed-off-by: Mark Hatle <mhatle@windriver.com>
This commit is contained in:
Mark Hatle
2010-08-18 15:23:50 -07:00
committed by Richard Purdie
parent f5dcdf9181
commit 84d96bac33
2 changed files with 39 additions and 1 deletions
@@ -0,0 +1,37 @@
The ELF_T_LIB and ELF_T_GNUHASH sizes were missing from fsize table.
This could cause a failure in the elf*_xlatetof function.
diff -ur elfutils-0.148.orig/libelf/exttypes.h elfutils-0.148/libelf/exttypes.h
--- elfutils-0.148.orig/libelf/exttypes.h 2009-01-08 12:56:37.000000000 -0800
+++ elfutils-0.148/libelf/exttypes.h 2010-08-18 14:00:33.000000000 -0700
@@ -94,6 +94,7 @@
Vernaux32 (Ext_);
Syminfo32 (Ext_);
Move32 (Ext_);
+Lib32 (Ext_);
auxv_t32 (Ext_);
Ehdr64 (Ext_);
@@ -110,6 +111,7 @@
Vernaux64 (Ext_);
Syminfo64 (Ext_);
Move64 (Ext_);
+Lib64 (Ext_);
auxv_t64 (Ext_);
#undef START
diff -ur elfutils-0.148.orig/libelf/gelf_fsize.c elfutils-0.148/libelf/gelf_fsize.c
--- elfutils-0.148.orig/libelf/gelf_fsize.c 2009-01-08 12:56:37.000000000 -0800
+++ elfutils-0.148/libelf/gelf_fsize.c 2010-08-18 14:11:57.000000000 -0700
@@ -87,7 +87,9 @@
[ELF_T_NHDR] = sizeof (ElfW2(LIBELFBITS, Ext_Nhdr)), \
[ELF_T_SYMINFO] = sizeof (ElfW2(LIBELFBITS, Ext_Syminfo)), \
[ELF_T_MOVE] = sizeof (ElfW2(LIBELFBITS, Ext_Move)), \
- [ELF_T_AUXV] = sizeof (ElfW2(LIBELFBITS, Ext_auxv_t))
+ [ELF_T_LIB] = sizeof (ElfW2(LIBELFBITS, Ext_Lib)), \
+ [ELF_T_AUXV] = sizeof (ElfW2(LIBELFBITS, Ext_auxv_t)), \
+ [ELF_T_GNUHASH] = ELFW2(LIBELFBITS, FSZ_WORD)
TYPE_SIZES (32)
},
[ELFCLASS64 - 1] = {
+2 -1
View File
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3\
file://EXCEPTION;md5=570adcb0c1218ab57f2249c67d0ce417"
DEPENDS = "libtool"
PR = "r0"
PR = "r1"
SRC_URI = "https://fedorahosted.org/releases/e/l/elfutils/elfutils-${PV}.tar.bz2"
@@ -23,6 +23,7 @@ SRC_URI += "\
file://do-autoreconf.diff \
file://testsuite-ignore-elflint.diff \
file://elf_additions.diff \
file://elfutils-fsize.patch \
"
# The buildsystem wants to generate 2 .h files from source using a binary it just built,