mirror of
https://github.com/openharmony/third_party_elfutils.git
synced 2026-07-16 07:44:26 -04:00
237188e4d7
- The problem this is trying to solve can be seen for example thus: $ eu-readelf -a / eu-readelf: failed reading '/': (null) With the fix we see a proper error number and get a reasonable error message: $ eu-readelf -a / eu-readelf: failed reading '/': invalid file descriptor Signed-off-by: Petr Machata <pmachata@redhat.com>
937 lines
29 KiB
Plaintext
937 lines
29 KiB
Plaintext
2014-09-10 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_begin (read_unmmaped_file): Call __libelf_seterrno if the
|
|
file is unreadable.
|
|
|
|
2014-07-07 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2014-04-13 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* Makefile.am: Remove !MUDFLAP conditions.
|
|
* elf_begin.c (read_file): Don't clear use_mmap when _MUDFLAP is
|
|
defined.
|
|
* elf_update.c (write_file): Remove _MUDFLAP condition.
|
|
|
|
2014-01-17 Jakub Jelinek <jakub@redhat.com>
|
|
Roland McGrath <roland@redhat.com>
|
|
|
|
* libelfP.h (INVALID_NDX): Define.
|
|
* gelf_getdyn.c (gelf_getdyn): Use it. Remove ndx < 0 test if any.
|
|
* gelf_getlib.c (gelf_getlib): Likewise.
|
|
* gelf_getmove.c (gelf_getmove): Likewise.
|
|
* gelf_getrel.c (gelf_getrel): Likewise.
|
|
* gelf_getrela.c (gelf_getrela): Likewise.
|
|
* gelf_getsym.c (gelf_getsym): Likewise.
|
|
* gelf_getsyminfo.c (gelf_getsyminfo): Likewise.
|
|
* gelf_getsymshndx.c (gelf_getsymshndx): Likewise.
|
|
* gelf_getversym.c (gelf_getversym): Likewise.
|
|
* gelf_update_dyn.c (gelf_update_dyn): Likewise.
|
|
* gelf_update_lib.c (gelf_update_lib): Likewise.
|
|
* gelf_update_move.c (gelf_update_move): Likewise.
|
|
* gelf_update_rel.c (gelf_update_rel): Likewise.
|
|
* gelf_update_rela.c (gelf_update_rela): Likewise.
|
|
* gelf_update_sym.c (gelf_update_sym): Likewise.
|
|
* gelf_update_syminfo.c (gelf_update_syminfo): Likewise.
|
|
* gelf_update_symshndx.c (gelf_update_symshndx): Likewise.
|
|
* gelf_update_versym.c (gelf_update_versym): Likewise.
|
|
|
|
2014-01-17 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
* elf32_getphdr.c (elfw2(LIBELFBITS,getphdr)): Check if program header
|
|
table fits into object's bounds.
|
|
* elf_getshdrstrndx.c (elf_getshstrndx): Add elf->start_offset to
|
|
elf->map_address. Check if first section header fits into object's
|
|
bounds.
|
|
* elf32_getshdr.c (elfw2(LIBELFBITS,getshdr)):
|
|
Check if section header table fits into object's bounds.
|
|
* elf_begin.c (get_shnum): Ensure section headers fits into
|
|
object's bounds.
|
|
(file_read_elf): Make sure scncnt is small enough to allocate both
|
|
ElfXX_Shdr and Elf_Scn array. Make sure section and program header
|
|
tables fit into object's bounds. Avoid memory leak on failure.
|
|
* elf_newscn.c (elf_newscn): Check for overflow.
|
|
* elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Likewise.
|
|
(__elfw2(LIBELFBITS,updatefile)): Likewise.
|
|
* elf32_newphdr.c (elfw2(LIBELFBITS,newphdr)): Likewise.
|
|
* elf_getarsym.c (elf_getarsym): Likewise.
|
|
|
|
2013-11-08 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf32_updatefile.c (elfXX_updatemmap): Only memcpy ehdr when not
|
|
already directly mmapped.
|
|
|
|
2013-11-05 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf32_updatefile.c (elfXX_updatefile): Copy all section headers
|
|
if elf->flags dirty.
|
|
|
|
2013-11-01 Michael Forney <mforney@mforney.org>
|
|
|
|
* Makefile.am: Use READELF.
|
|
|
|
2013-10-01 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2013-06-17 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2013-08-28 Namhyung Kim <namhyung@gmail.com>
|
|
|
|
* gelf.h (gelf_fsize): Fix typo in comment.
|
|
|
|
2013-08-28 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* gelf_getauxv.c (gelf_getauxv): Add missing whitespace.
|
|
|
|
2013-08-27 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* gelf_getauxv.c (gelf_getauxv): Remove unnecessary casts to char *.
|
|
|
|
2013-08-25 Kurt Roeckx <kurt@roeckx.be>
|
|
|
|
* gelf_getauxv.c (gelf_getauxv): Use memcpy instead of pointer
|
|
dereference to avoid alignment problems.
|
|
|
|
2013-01-07 Roland McGrath <roland@hack.frob.com>
|
|
|
|
* elf_getarsym.c (elf_getarsym): Copy FILE_DATA into stack space if it
|
|
would be unaligned and !ALLOW_UNALIGNED.
|
|
|
|
* elf_getarsym.c (read_number_entries): Use memcpy instead of pointer
|
|
dereference so as not to assume the field is naturally aligned.
|
|
|
|
2012-09-17 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2012-08-16 Roland McGrath <roland@hack.frob.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2012-08-14 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf32_checksum.c (ebl_debugscn_p): Removed unused define and
|
|
confusing outdated comment.
|
|
|
|
2012-08-01 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_getarsym (read_number_entries): New function.
|
|
(elf_getarsym): Handle 64-bit symbol table, stored in special
|
|
entry named "/SYM64/".
|
|
* elf_begin.c (__libelf_next_arhdr_wrlock): Don't reject archive
|
|
because it contains 64-bit symbol table.
|
|
|
|
2012-07-19 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf32_getshdr.c (load_shdr_wrlock): Add elf->flags & ELF_F_MALLOCED
|
|
to asserts.
|
|
|
|
2012-07-17 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf32_xlatetom.c (elfw2(LIBELFBITS, xlatetom)): Do not check for
|
|
integer number of records in case of ELF_T_NHDR.
|
|
|
|
2012-04-02 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf32_offscn.c: Do not match SHT_NOBITS sections at OFFSET unless
|
|
there are no nonempty sections at that offset.
|
|
|
|
2012-03-21 Roland McGrath <roland@hack.frob.com>
|
|
|
|
* elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check.
|
|
|
|
2011-02-26 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini.
|
|
|
|
2011-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
|
|
* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Fix off64_t overflow
|
|
when MAXIMUM_SIZE == ~0.
|
|
|
|
2010-08-18 Roland McGrath <roland@redhat.com>
|
|
|
|
* gelf_fsize.c (__libelf_type_sizes): Add entries for ELF_T_LIB
|
|
and ELF_T_GNUHASH.
|
|
Reported by Mark Hatle <mark.hatle@windriver.com>.
|
|
|
|
* exttypes.h: Add cases for ElfNN_Lib.
|
|
Reported by Mark Hatle <mark.hatle@windriver.com>.
|
|
|
|
2010-06-14 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* gelf_update_shdr.c: Implicitly set ELF_F_DIRTY bit.
|
|
* gelf_update_phdr.c: Likewise.
|
|
* gelf_update_ehdr.c: Likewise.
|
|
|
|
2010-04-14 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_getphdr.c: Check for e_phoff/size outside the file bounds.
|
|
* elf_begin.c (file_read_elf): Don't set .phdr here.
|
|
|
|
2010-04-13 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2010-04-06 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_error.c (ELF_E_FD_MISMATCH_IDX): Avoid nonobvious abbreviation
|
|
in error message.
|
|
|
|
2010-04-01 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_getdata.c (__elf_getdata_rdlock): Initialize data.s for data
|
|
that do not need a conversion.
|
|
|
|
2010-03-11 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2010-03-04 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2010-02-17 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_begin.c (file_read_elf): Leave section rawdata_base and
|
|
data_base pointers null when [sh_offset,sh_size) points outside
|
|
the mapped file.
|
|
|
|
2010-02-15 Roland McGrath <roland@redhat.com>
|
|
|
|
* Makefile.am: Use config/eu.am for common stuff.
|
|
|
|
2010-01-07 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_getphdr.c: Use __elf_getphdrnum_rdlock.
|
|
* gelf_getphdr.c: Likewise.
|
|
* gelf_update_phdr.c: Likewise.
|
|
* elf32_updatefile.c (__elf32_updatemmap, __elf32_updatefile): Likewise.
|
|
* elf32_updatenull.c (__elf32_updatenull_wrlock): Likewise.
|
|
* elf32_newphdr.c: Clear section 0's sh_info when resetting e_phnum.
|
|
If COUNT is too large, use store PN_XNUM instead and set sh_info.
|
|
* elf_begin.c (file_read_elf): Always allocate space we can use later
|
|
for section 0 if doing RDWR.
|
|
|
|
* elf_getphdrnum.c: New file.
|
|
* Makefile.am (libelf_a_SOURCES): Add it.
|
|
* libelf.h: Declare elf_getphdrnum.
|
|
* libelfP.h: Declare __elf_getphdrnum_rdlock.
|
|
* libelf.map (ELFUTILS_1.6): New set, add elf_getphdrnum.
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2009-10-23 Lubomir Rintel <lkundrak@v3.sk>
|
|
|
|
* elf32_updatefile.c (fill_mmap): When starting past shdr_end, start
|
|
filling from section start, not shdr_end.
|
|
|
|
2009-11-10 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_readall.c (__libelf_readall): Fetch file size if not yet known.
|
|
|
|
2009-11-06 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* elf_next.c (elf_next): Mark the archive header as unusable when
|
|
there is no next ar element.
|
|
|
|
2009-08-12 Mark Wielaard <mjw@redhat.com>
|
|
|
|
* Makefile.am (libelf.so): Use -Wl,-z,defs not -defs.
|
|
|
|
2009-07-26 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2009-07-21 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c (__elfXX_updatemmap): Fix handling of gaps between
|
|
sections. Patch by Lubomir Rintel <lkundrak@v3.sk>.
|
|
|
|
2009-07-08 Roland McGrath <roland@redhat.com>
|
|
|
|
* libelfP.h (struct Elf): Remove unused ar.has_index field.
|
|
Reorder various members for optimal packing.
|
|
|
|
2009-07-08 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2009-06-13 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Makefile.am (libelf_a_SOURCES): Replace elf_getshnum.c and
|
|
elf_getshstrndx.c with elf_getshdrnum.c and elf_getshdrstrndx.c.
|
|
* elf_getshnum.c: Renamed to...
|
|
* elf_getshdrnum.c: ...this. Rename function and add old name as
|
|
alias. Likewise for internal functions with derived names.
|
|
* elf_getshstrndx.c: Renamed to...
|
|
* elf_getshdrstrndx.c: ...this. Rename function and add old name as
|
|
alias. Likewise for internal functions with derived names.
|
|
* libelf.h: Add prototypes for new names. Make old names as
|
|
deprecated.
|
|
* libelfP.h: Rename internal function prototypes.
|
|
* libelf.map: Export for names.
|
|
* elf32_checksum.c: Don't use deprecated functions.
|
|
* elf32_getshdr.c: Likewise.
|
|
|
|
2009-06-01 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2009-04-14 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2009-04-01 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2009-02-10 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c (updatefile): For the zeroth section we still
|
|
have to copy the section header.
|
|
|
|
2009-02-01 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_strptr.c: Add comment re possible problem.
|
|
|
|
2009-01-26 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatenull.c (updatenull_wrlock): Fix comment of
|
|
ELF_F_LAYOUT behaviour re section header table.
|
|
|
|
2009-01-22 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c (__elfXX_updatemmap): Fill the gap between
|
|
sections even if only the section at the start of the gap has been
|
|
changed.
|
|
(__elfXX_updatefile): Likewise.
|
|
|
|
2009-01-21 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c (__elfXX_updatemmap): Skip most of the loop to
|
|
handle sections for NOBITS sections.
|
|
(elfXX_updatefile): Likewise.
|
|
|
|
* elf32_updatefile.c (__elfXX_updatemmap): When skipping non-NOBITS
|
|
sections we haven't loaded, update last_position based on scn_start,
|
|
not based on old value. Don't run the loop for the dummy section 0.
|
|
(elfXX_updatefile): Don't run the loop for the dummy section 0.
|
|
|
|
2009-01-10 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* libelfP.h (_): We only have one translation domain, elfutils.
|
|
|
|
* Makefile.am: Use USE_LOCKS instead of USE_TLS.
|
|
* elf_error.c: Always use __thread. Remove all !USE_TLS code.
|
|
|
|
2009-01-04 Roland McGrath <roland@redhat.com>
|
|
|
|
* note_xlate.h (elf_cvt_note): Don't examine a size too small to
|
|
container a note header.
|
|
|
|
2008-12-11 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Handle
|
|
placement offset going backwards, for out-of-order or overlapping
|
|
(bogus) sh_offset layouts. It's a dumb use, but should not crash.
|
|
(__elfw2(LIBELFBITS,updatefile)): Likewise.
|
|
Fixes RHBZ#476136.
|
|
|
|
* libelf.h (Elf_Data): Whitespace fix.
|
|
|
|
2008-12-10 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_getarhdr.c (elf_getarhdr): Fix missing rename in last change.
|
|
|
|
2008-10-22 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_rawfile.c (elf_rawfile): Lock around elf-> references.
|
|
|
|
2008-10-21 Petr Machata <pmachata@redhat.com>
|
|
|
|
* libelfP.h: Rename getehdr_rdlock to getehdr_wrlock.
|
|
* elf32_getehdr.c (getehdr_rdlock): Move the code to new function
|
|
getehdr_impl and make it a wrapper. Rename to getehdr_wrlock.
|
|
(getehdr_impl): Guard elf->class init with wrlock.
|
|
(getehdr): Also make it a wrapper of getehdr_impl.
|
|
* elf32_updatenull.c (updatenull_wrlock): Call getehdr_wrlock.
|
|
|
|
2008-10-20 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Lock around the
|
|
code that reads mutable elf state. Relock to write lock to chain
|
|
the new chunk on the elf rawchunks list.
|
|
|
|
2008-10-20 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf32_checksum.c (checksum): Place a lock around the code that
|
|
processes data. Make it wrlock if the code needs to xlate the
|
|
data before processing.
|
|
|
|
2008-10-16 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_begin.c
|
|
(__libelf_next_arhdr): Rename to __libelf_next_arhdr_wrlock.
|
|
(dup_elf): Adjust the call.
|
|
(elf_begin): New local function lock_dup_elf. Relocks the elf if
|
|
necessary before calling dup. Call this instead of dup_elf.
|
|
* elf_getarhdr.c
|
|
(elf_getarhdr): Lock before calling __libelf_next_arhdr_wrlock.
|
|
* elf_next.c (elf_next): Likewise.
|
|
* elf_rand.c (elf_rand): Likewise.
|
|
|
|
2008-10-14 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_getdata.c (__elf_getdata_rdlock): Lock before converting.
|
|
|
|
2008-11-26 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2008-10-06 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_getarhdr.c (elf_getarhdr): Return NULL when passed NULL.
|
|
|
|
2008-08-27 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_begin.c (get_shnum): Avoid misaligned reads for matching endian.
|
|
|
|
* libelfP.h [!ALLOW_UNALIGNED] (__libelf_type_align): Fix CLASS index.
|
|
|
|
2008-08-25 Roland McGrath <roland@redhat.com>
|
|
|
|
* Makefile.am (libelf_so_LDLIBS): New variable.
|
|
(libelf.so): Use it in the link.
|
|
|
|
2008-08-21 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf_getdata.c, libelfP.h
|
|
(__elf_getdata_internal): Rename to __elf_getdata_rdlock.
|
|
(__libelf_set_rawdata_wrlock): New function.
|
|
(__libelf_set_rawdata): Make it a wrapper that calls *_wrlock.
|
|
* elf32_updatenull.c, libelfP.h
|
|
(__elfNN_updatenull): Rename to __elfNN_updatenull_wrlock.
|
|
|
|
2008-08-21 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf32_getphdr.c, libelfP.h
|
|
(__elfNN_getphdr_internal): Drop. Move __elfNN_getphdr_internal
|
|
code to __elfNN_getphdr_wrlock.
|
|
(__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): New functions.
|
|
(__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): Make these
|
|
wrappers of getphdr_impl.
|
|
|
|
2008-08-21 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf32_getehdr.c, libelfP.h
|
|
(__elfNN_getehdr_internal): Rename to __elfNN_getehdr_rdlock.
|
|
* gelf_getehdr, libelfP.h:
|
|
(__gelf_getehdr_internal): Rename to __gelf_getehdr_rdlock.
|
|
|
|
2008-08-21 Petr Machata <pmachata@redhat.com>
|
|
|
|
* elf32_getshdr.c
|
|
(__elfNN_getshdr_internal): Drop.
|
|
(load_shdr_wrlock, scn_valid): New functions, contain bits of
|
|
behaviour from __elfNN_getshdr_internal.
|
|
(__elfNN_getshdr_rdlock, __elfNN_getshdr_wrlock): Replacements for
|
|
dropped _internal functions above.
|
|
* elf_getshnum.c
|
|
(__elf_getshnum_internal): Rename to __elf_getshnum_rdlock.
|
|
|
|
2008-08-04 Petr Machata <pmachata@redhat.com>
|
|
|
|
* libelfP.h (RWLOCK_RDLOCK, RWLOCK_WRLOCK, RWLOCK_UNLOCK): New macros.
|
|
|
|
2008-07-28 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2008-03-31 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_offscn.c: Make sure shdrs have been read in.
|
|
|
|
2008-02-19 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2008-02-08 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2008-01-31 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_strptr.c (elf_strptr): Don't fail if the ELF file is currently
|
|
under construction and no raw data can be read from disk.
|
|
|
|
2008-01-30 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2008-01-26 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_begin.c (__libelf_next_arhdr): Rewrite conversions using a macro.
|
|
Fixes various pastos in wrong type in sizeof, wrong string parsed.
|
|
|
|
2008-01-20 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_getaroff.c: Calculate from start_offset, instead of using
|
|
parent's state.ar.offset field.
|
|
|
|
2008-01-08 Roland McGrath <roland@redhat.com>
|
|
|
|
* Makefile.am (euinclude): Variable removed.
|
|
(pkginclude_HEADERS): Set this instead of euinclude_HEADERS.
|
|
|
|
2008-01-03 Roland McGrath <roland@redhat.com>
|
|
|
|
* common.h: Add __attribute__ ((unused)) to static functions.
|
|
|
|
2007-12-20 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Makefile.am (libelf_a_SOURCES): Add elf_scnshndx.
|
|
* libelfP.h (struct Elf_Scn): Add shndx_index field.
|
|
Declare __elf_scnshndx_internal.
|
|
* elf32_getshdr.c: Record location of extended section header.
|
|
* elf_begin.c (file_read_elf): Likewise.
|
|
* elf_scnshndx.c: New file.
|
|
* libelf.h: Declare elf_scnshndx.
|
|
* libelf.map: Add elf_scnshndx to version ELFUTILS_1.4.
|
|
|
|
2007-11-12 Roland McGrath <roland@redhat.com>
|
|
|
|
* libelf.h: Replace off64_t with loff_t throughout.
|
|
Only that type name is unconditionally defined by <sys/types.h>
|
|
|
|
2007-11-03 Roland McGrath <roland@redhat.com>
|
|
|
|
* libelf.h (Elf_Data): Comment fix.
|
|
|
|
2007-10-18 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2007-10-07 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_begin.c (__libelf_next_arhdr): Fix fencepost error and wrong
|
|
member access in terminating name with no trailing /. Trim trailing
|
|
spaces when there is no /.
|
|
|
|
2007-10-04 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_end.c (elf_end): Don't free ELF->state.ar.ar_sym when it's -1l.
|
|
|
|
2007-10-03 Roland McGrath <roland@redhat.com>
|
|
|
|
* libelf.h (Elf_Data): Use off64_t for d_off.
|
|
(Elf_Arhdr): Use off64_t for ar_size.
|
|
(elf_update, elf_getbase, elf_getaroff): Return off64_t.
|
|
|
|
* gelf_rawchunk.c: File removed.
|
|
* gelf_freechunk.c: File removed.
|
|
* Makefile.am (libelf_a_SOURCES): Remove them.
|
|
* libelf.map (ELFUTILS_1.0): Remove exports.
|
|
* gelf.h: Remove decls.
|
|
|
|
* elf_getdata_rawchunk.c: New file.
|
|
* Makefile.am (libelf_a_SOURCES): Add it.
|
|
* libelf.map (ELFUTILS_1.3): Add elf_getdata_rawchunk.
|
|
* libelf.h: Declare it.
|
|
* libelfP.h (Elf_Data_Chunk): New type.
|
|
(struct Elf.elf): New member `rawchunks'.
|
|
* elf_end.c (elf_end): Free recorded rawchunk buffers.
|
|
|
|
2007-08-24 Roland McGrath <roland@redhat.com>
|
|
|
|
* gelf_getnote.c: New file.
|
|
* Makefile.am (libelf_a_SOURCES): Add it.
|
|
* gelf.h: Declare gelf_getnote.
|
|
* libelf.map (ELFUTILS_1.3): Add gelf_getnote.
|
|
|
|
* libelfP.h (NOTE_ALIGN): New macro.
|
|
* note_xlate.h: New file.
|
|
* Makefile.am (noinst_HEADERS): Add it.
|
|
* gelf_xlate.c: Include it.
|
|
(__elf_xfctstom): Use elf_cvt_note.
|
|
* elf_getdata.c (shtype_map, __libelf_type_align): Handle SHT_NOTE.
|
|
(__libelf_set_rawdata): Likewise.
|
|
|
|
2007-08-19 Roland McGrath <roland@redhat.com>
|
|
|
|
* gelf_update_auxv.c: New file.
|
|
* gelf_getauxv.c: New file.
|
|
* Makefile.am (libelf_a_SOURCES): Add them.
|
|
* gelf.h: Declare gelf_getauxv, gelf_update_auxv.
|
|
* libelf.map (ELFUTILS_1.3): New set, inherits fom ELFUTILS_1.2.
|
|
Export gelf_getauxv, gelf_update_auxv.
|
|
|
|
* libelf.h (Elf_Type): Add ELF_T_AUXV.
|
|
* abstract.h: Add auxv_t entries.
|
|
* exttypes.h: Likewise.
|
|
* gelf_xlate.h: Likewise.
|
|
* gelf_xlate.c (__elf_xfctstom): Add ELF_T_AUXV entries.
|
|
* gelf_fsize.c (__libelf_type_sizes): Likewise.
|
|
|
|
2007-08-12 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_updatefile.c (compare_sections): Sort secondarily on sh_size,
|
|
and only tertiarily on index.
|
|
|
|
2007-07-09 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2007-04-22 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2007-03-18 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_begin.c (get_shnum): Fix test for e_shoff being out of bounds.
|
|
Return zero when the section headers do not fit within MAXSIZE.
|
|
|
|
2007-03-09 Roland McGrath <roland@redhat.com>
|
|
|
|
* libelfP.h (LIBELF_EV_IDX): New macro.
|
|
(__libelf_type_align): New macro.
|
|
[! ALLOW_UNALIGNED]: Declare __libc_type_aligns array.
|
|
* elf_getdata.c (shtype_map): Convert to just Elf_Type[][].
|
|
(convert_data, __libelf_set_rawdata): Use that, __libelf_type_align,
|
|
and __libelf_type_sizes, in place of old table.
|
|
(__libc_type_aligns): New const variable.
|
|
|
|
2007-02-04 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Makefile (libelf.so): Build with -z relro.
|
|
|
|
* elf_begin.c (read_file): When using ELF_C_READ_MMAP use MAP_PRIVATE.
|
|
|
|
2007-01-30 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* nlist.c: Close file descriptor before returning.
|
|
|
|
2007-01-20 Roland McGrath <roland@redhat.com>
|
|
|
|
* gnuhash_xlate.h (elf_cvt_gnuhash): Fix fence-post error so we
|
|
convert the final word.
|
|
|
|
* elf32_getshdr.c: Don't byteswap shdr fields when EI_DATA matches
|
|
MY_ELFDATA on !ALLOW_UNALIGNED machines.
|
|
|
|
2007-01-18 Roland McGrath <roland@redhat.com>
|
|
|
|
* gelf_rawchunk.c (gelf_rawchunk): Clear RESULT pointer after freeing
|
|
it on read error.
|
|
|
|
2006-10-13 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_updatenull.c: Look for and accept phdr also for ET_CORE.
|
|
* elf_error.c (msgstr): Change ELF_E_INVALID_PHDR string.
|
|
|
|
2006-08-29 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_getphdr.c: Don't byteswap phdr fields when EI_DATA matches
|
|
MY_ELFDATA on !ALLOW_UNALIGNED machines.
|
|
Reported by Christian Aichinger <Greek0@gmx.net>.
|
|
|
|
* Makefile.am (CLEANFILES): Add libelf.so.$(VERSION).
|
|
|
|
2006-08-08 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h (DT_VALNUM): Update.
|
|
(DT_ADDRNUM): Likewise.
|
|
|
|
2006-07-12 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c: Adjust for internal_function_def removal.
|
|
* elf32_updatenull.c: Likewise.
|
|
* elf_begin.c: Likewise.
|
|
* elf_getdata.c: Likewise.
|
|
|
|
2006-07-11 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* libelf.h: Define ELF_T_GNUHASH.
|
|
* elf_getdata.c (TYPEIDX): Handle SHT_GNU_HASH.
|
|
(shtype_map): Add SHT_GNU_HASH entries.
|
|
* gelf_xlate.c (__elf_xfctstom): Add ELF_T_GNUHASH entries.
|
|
* gnuhash_xlate.h: New file.
|
|
* Makefile.am (noinst_HEADERS): Add gnuhash_xlate.h.
|
|
|
|
2006-07-06 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_gnu_hash.c: New file.
|
|
* libelf.h: Declare elf_gnu_hash.
|
|
* Makefile.am (libelf_a_SOURCES): Add elf_gnu_hash.
|
|
* libelf.map: Add elf_gnu_map for version ELFUTILS_1.2.
|
|
|
|
2006-06-15 Roland McGrath <roland@redhat.com>
|
|
|
|
* libelf.h (elf_getarsym): Fix comment typo.
|
|
Rename second parameter to be more explanatory.
|
|
(elf_getident, elf_rawhide): Likewise.
|
|
|
|
2006-05-28 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c (updatemmap): Preserve section content if
|
|
copying would overwrite them.
|
|
Fix msync paramters.
|
|
|
|
2006-04-04 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_updatefile.c (updatemmap): Handle other-endian case.
|
|
|
|
2006-04-04 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c (updatemmap): Cleanups. Remove shdr_dest
|
|
variable. Before writing sections, make a copy of the section
|
|
header data if necessary. Don't write section header while
|
|
writing the section constent, it might overwrite some sections.
|
|
Restore the pointer afterwards.
|
|
* elf32_updatenull.c (updatenull): If the offset of a section in a
|
|
file changed make sure we read the section so that it'll be written
|
|
out.
|
|
|
|
* elf_update.c: Remove debug message.
|
|
|
|
2005-12-07 Roland McGrath <roland@redhat.com>
|
|
|
|
* gelf_xlate.c [! ALLOW_UNALIGNED] (union unaligned): New type.
|
|
(FETCH, STORE): New macros.
|
|
(INLINE3): Use those to do alignment-friendly conversion.
|
|
|
|
* elf32_getshdr.c: Include map_address and start_offset in alignment
|
|
calculations.
|
|
* elf32_getphdr.c: Likewise.
|
|
|
|
2005-11-19 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2005-11-17 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2005-11-10 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2005-09-09 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_update.c (write_file): Stat the file and fchmod it after update
|
|
if its mode had S_ISUID or S_ISGID bits set.
|
|
|
|
2005-08-28 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_getphdr.c: Include <system.h>. Use pread_retry instead of
|
|
pread. And branch prediction where useful.
|
|
* elf_begin.c: Likewise.
|
|
* elf_getdata.c: Likewise.
|
|
* elf_getshstrndx.c: Likewise.
|
|
* elf_readall.c: Likewise.
|
|
* gelf_rawchunk.c: Likewise.
|
|
* elf32_updatefile.c: Include <system.h>. Use pread_retry instead of
|
|
pread. And branch prediction where useful.
|
|
* elf_getarsym.c: Don't define pread_retry here.
|
|
|
|
* Makefile.am: Use $(LINK) not $(CC) when creating DSO.
|
|
(%.os): Use COMPILE.os.
|
|
(COMPILE.os): Filter out gconv options.
|
|
|
|
2005-08-27 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_begin.c (file_read_elf): Avoid reading ELF header from file
|
|
again. Instead accept additional parameter which points to it if we
|
|
don't use mmap.
|
|
(get_shnum): Use passed in e_ident value as source of ELF header.
|
|
|
|
2005-08-15 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_begin.c (__libelf_next_arhdr): Use TEMP_FAILURE_RETRY.
|
|
|
|
* Makefile (libelf_a_SOURCES): Add elf_getaroff.c.
|
|
* libelf.map: Export elf_getaroff.
|
|
* libelf.h: Declare elf_getaroff.
|
|
* elf_getaroff.c: New file.
|
|
|
|
2005-08-13 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_begin.c (get_shnum): Optimize memory handling. Always read from
|
|
mapped file if available. Fix access to 64-bit sh_size. Recognize
|
|
overflow.
|
|
(file_read_elf): Likewise.
|
|
|
|
2005-08-12 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf32_offscn.c: Do not match empty sections at OFFSET unless
|
|
there are no nonempty sections at that offset.
|
|
|
|
2005-08-07 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2005-08-06 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Makefile.am (AM_CFLAGS): Add -fpic when BUILD_STATIC.
|
|
|
|
2005-08-03 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* libelf.map: Move elf32_offscn, elf64_offscn, and gelf_offscn in
|
|
new version ELFUTILS_1.1.1.
|
|
|
|
2005-08-02 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_error.c: Add handling of ELF_E_INVALID_OFFSET.
|
|
* elf32_offscn.c: New file.
|
|
* elf64_offscn.c: New file.
|
|
* gelf_offscn.c: New file.
|
|
* Makefile.am (libelf_a_SOURCES): Add elf32_offscn.c, elf64_offscn.c,
|
|
and gelf_offscn.c.
|
|
* libelf.sym: Export new symbols.
|
|
|
|
2005-07-23 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf-knowledge.h (SECTION_STRIP_P): Don't handle removal of debug
|
|
sections here anymore.
|
|
* elf32_checksum.c: Adjust for change in SECTION_STRIP_P interface.
|
|
|
|
* elf_update.c (elf_update): Get write lock, not read lock.
|
|
|
|
* elf32_updatenull.c (updatenull): Get section headers if necessary
|
|
and possible.
|
|
|
|
2005-07-22 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatenull.c (updatenull): If program header hasn't been loaded
|
|
yet, try to do it now.
|
|
Don't unnecessarily update overflow of section count in zeroth section
|
|
sh_size field.
|
|
If section content hasn't been read yet, do it before looking for the
|
|
block size. If no section data present, infer size of section header.
|
|
|
|
2005-05-11 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update again.
|
|
|
|
2005-05-09 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2005-05-08 Roland McGrath <roland@redhat.com>
|
|
|
|
* elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now.
|
|
* elf_update.c (write_file) [_MUDFLAP]: Likewise.
|
|
|
|
2005-03-29 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_checksum.c: Use INTUSE and INTDEF to avoid PLTs.
|
|
* elf_end.c: Likewise.
|
|
* elf_getdata.c: Likewise.
|
|
* gelf_getehdr.c: Likewise.
|
|
* nlist.c: Likewise.
|
|
* libelfP.h: Add declarations of internal functions.
|
|
|
|
2005-02-15 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* common.h (CONVERT): Make sure all values are unsigned.
|
|
(CONVERT_TO): Likewise.
|
|
|
|
* Makefile.am (AM_CFLAGS): Add -Wformat=2.
|
|
Fix rule to build libelf.so.
|
|
|
|
2005-02-06 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra.
|
|
Remove lint handling.
|
|
* elf32_getphdr.c: Minor cleanups.
|
|
* elf32_getshdr.c: Likewise.
|
|
* elf32_updatefile.c: Likewise.
|
|
* elf32_updatenull.c: Likewise.
|
|
* elf_begin.c: Likewise.
|
|
* elf_error.c: Likewise.
|
|
* elf_getarsym.c: Likewise.
|
|
* elf_getdata.c: Likewise.
|
|
* elf_update.c: Likewise.
|
|
* gelf_xlate.c: Likewise.
|
|
|
|
2005-02-05 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Makefile.am: Check for text relocations in constructed DSO.
|
|
|
|
* Makefile.am [MUDFLAP] (AM_CFLAGS): Add -Werror -fpic -fmudflap.
|
|
|
|
2005-02-04 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* gelf_getehdr.c (gelf_getehdr): Slight optimization.
|
|
|
|
* elf32_checksum.c (checksum): Do not look at NOBITS sections.
|
|
|
|
* gelf.h: Add gelf_checksum prototype.
|
|
|
|
2004-09-25 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_checksum.c: Make compile with gcc 4.0.
|
|
* elf32_updatefile.c: Likewise.
|
|
* elf32_updatenull.c: Likewise.
|
|
* elf_begin.c: Likewise.
|
|
* elf_error.c: Likewise.
|
|
* elf_getdata.c: Likewise.
|
|
* elf_getident.c: Likewise.
|
|
|
|
2004-04-01 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Update from glibc.
|
|
|
|
2004-01-23 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf_update.c: Fix locking.
|
|
* elf_clone.c: Likewise.
|
|
|
|
* libelf.h: Define ELF_T_LIB.
|
|
* gelf_getlib.c: New file.
|
|
* gelf_update_lib.c: New file.
|
|
* gelf.h: Declare the new functions. Define GElf_Lib.
|
|
* abstract.h: Define Lib, Lib32, Lib64.
|
|
* gelf_xlate.c (__elf_xfctstom): Add ELF_T_LIB entry.
|
|
* gelf_xlate.h: Add entry for ElfXX_Lib.
|
|
* elf_getdata.c: Recognize SHT_GNU_LIBLIST as a known section type.
|
|
* libelf.map: Add new symbols to ELFUTILS_1.1.
|
|
* Makefile.am (libelf_a_SOURCES): Add gelf_getlib.c and
|
|
gelf_update_lib.c.
|
|
|
|
2004-01-17 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Makefile.am: Support building with mudflap.
|
|
|
|
* gelf_xlate.c (INLINE3): Avoid using cast as lvalue.
|
|
* dl-hash.h (_dl_elf_hash): Likewise.
|
|
|
|
2004-01-05 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf-knowledge.h: New file. From libelf subdir.
|
|
* Makefile.am (euincludedir): Define.
|
|
(euinclude_HEADERS): Add elf-knowledge.h.
|
|
|
|
2003-09-24 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf.h: Define some PT_IA_64_HP_* constants.
|
|
|
|
2003-09-23 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
* libelfP.h (struct Elf): Move state.elf64.sizestr_offset after
|
|
state.elf64.scnincr to match state.elf{,32}.
|
|
|
|
2003-08-12 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* elf32_updatefile.c (__updatemmap): When writing back file where
|
|
some sections have not been read in, count their sizes based on
|
|
the section header.
|
|
|
|
2003-08-11 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
* Moved to CVS archive.
|