| 2023-02-20 Mark Wielaard <mark@klomp.org> | |
| * gnuhash_xlate.h (elf_cvt_gnuhash): memmove any left over bytes. | |
| 2022-11-30 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2022-10-28 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> | |
| * libelf_crc32.c: Remove LIB_SYSTEM_H define. | |
| 2022-09-20 Yonggang Luo <luoyonggang@gmail.com> | |
| * elf32_checksum.c: Use BYTE_ORDER, LITTLE_ENDIAN and BIG_ENDIAN. | |
| * elf32_xlatetof.c: Likewise. | |
| * elf_getarsym.c: Likewise. | |
| 2022-10-16 Yonggang Luo <luoyonggang@gmail.com> | |
| * common.h: Remove ar.h, byteswap.h and endian.h. | |
| * elf32_checksum.c: Remove endian.h. | |
| * elf32_getphdr.c: Remove unistd.h and system.h. | |
| * elf32_getshdr.c: Remove unistd.h.h and system.h. | |
| * elf32_updatefile.c: Remove unistd.h, sys/mman.h and system.h. | |
| * elf32_updatenull.c: Remove endian.h and system.h. | |
| * elf32_xlatetof.c: Remove endian.h. | |
| * elf32_xlatetom.c: Likewise. | |
| * elf_begin.c: Remove unistd.h, sys/mman.h and system.h. | |
| * elf_cntl.c: Remove unistd.h. | |
| * elf_compress.c: Remove system.h and unistd.h. | |
| * elf_end.c: Remove sys.mman.h. | |
| * elf_getarsym.c: Remove byteswap.h, endian.h, unistd.h and | |
| system.h. | |
| * elf_getdata.c: Remove unistd.h and system.h. | |
| * elf_getdata_rawchunk.c: Remove unistd.h and system.h. | |
| * elf_getshdrstrndx.c: Likewise. | |
| * elf_readall.c: Likewise. | |
| * elf_update.c: Remove unistd.h and sys/mman.h. | |
| * gelf_xlate.c: Remove byteswap.h. | |
| * libelfP.h: Add system.h. | |
| * nlist.c: Remove unistd.h. | |
| 2022-08-28 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (__libelf_next_arhdr_wrlock): Add OCT_FIELD macro, | |
| like INT_FIELD but use strtol with octal base 8. Use for ar_mode. | |
| 2022-08-08 Andreas Schwab <schwab@suse.de> | |
| * elf.h: Update from glibc. | |
| 2022-04-24 Mark Wielaard <mark@klomp.org> | |
| * elf_update.c (write_file): Check HAVE_MREMAP. | |
| 2022-04-01 Mark Wielaard <mark@klomp.org> | |
| * libelfP.h (struct Elf_Data_Chunk): Add an int64_t offset field. | |
| * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Check whether the | |
| requested chunk, offset, size and type, was already handed out. | |
| Set new Elf_Data_Chunk offset field. | |
| 2022-03-29 Mark Wielaard <mark@klomp.org> | |
| * gelf_xlate.c (START): Define and use sz variable. | |
| (END): Use sz variable to decide whether to do a memmove. | |
| 2022-03-24 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2022-03-22 Mark Wielaard <mark@klomp.org> | |
| * elf_getdata.c (__libelf_type_aligns): ELF_T_GNUHASH has different | |
| alignment for ELFCLASS32 and ELFCLASS64. | |
| 2022-03-20 Mark Wielaard <mark@klomp.org> | |
| * version_xlate.h (elf_cvt_Verdef): Make sure aux_offset and | |
| def_offset don't overflow. | |
| (elf_cvt_Verneed): Make sure aux_offset and need_offset don't | |
| overflow. | |
| 2022-03-18 Mark Wielaard <mark@klomp.org> | |
| * version_xlate.h (elf_cvt_Verdef): Check alignment of def_offset | |
| and aux_offset. | |
| (elf_cvt_Verneed): Check alignment of need_offset and aux_offset. | |
| 2022-03-17 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (read_long_names): Check ar_size starts with a digit. | |
| 2022-03-17 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (get_shnum): Take offset into account for Shdr | |
| alignment check. | |
| 2021-12-19 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (file_read_elf): Cast ehdr to uintptr_t before e_shoff | |
| alignment check. Only set shdr state when scncnt is larger than zero. | |
| 2021-12-16 Mark Wielaard <mark@klomp.org> | |
| * libelfP.h (NOTE_ALIGN4): And with negative unsigned long. | |
| (NOTE_ALIGN8): Likewise. | |
| 2021-12-15 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (get_shnum): Use offsetof to get field of unaligned | |
| struct. | |
| 2021-09-06 Dmitry V. Levin <ldv@altlinux.org> | |
| * common.h (allocate_elf): Remove cast of calloc return value. | |
| * elf_newdata.c (elf_newdata): Likewise. | |
| * elf_getscn.c (elf_getscn): Remove casts of calloc return values. | |
| * elf_newscn.c (elf_newscn): Likewise. | |
| * elf32_updatefile.c (__elfw2): Remove casts of malloc return values. | |
| * elf_getdata.c (convert_data): Likewise. | |
| (__libelf_set_rawdata_wrlock): Remove cast of malloc return value. | |
| * elf_begin.c (read_long_names): Remove cast of malloc return value. | |
| * elf_readall.c (__libelf_readall): Likewise. | |
| * elf_getarsym.c (elf_getarsym): Remove casts of malloc and realloc | |
| return values. | |
| 2021-07-19 Mark Wielaard <mark@klomp.org> | |
| * elf_strptr.c (validate_str): Check last char is zero first before | |
| calling memrchr on the whole block. | |
| 2021-06-09 Andrei Homescu <ah@immunant.com> | |
| * elf_getdata.c: Fix d_align for sections where alignment is larger | |
| than offset. | |
| 2020-12-12 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2020-12-16 Dmitry V. Levin <ldv@altlinux.org> | |
| * libelfP.h (_): Remove. | |
| 2020-12-15 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (get_shnum): Make sure the full Ehdr is available. | |
| 2020-12-12 Dmitry V. Levin <ldv@altlinux.org> | |
| * common.h: Fix spelling typo in comment. | |
| * gelf.h: Likewise. | |
| * libelf.h: Likewise. | |
| * libelfP.h: Likewise. | |
| * elf32_checksum.c (elfw2): Likewise. | |
| * elf_begin.c (dup_elf, write_file): Likewise. | |
| * elf_compress.c (__libelf_compress): Likewise. | |
| * elf_compress_gnu.c (elf_compress_gnu): Likewise. | |
| 2020-12-11 Dmitry V. Levin <ldv@altlinux.org> | |
| * Makefile.am (GCC_INCLUDE): Remove. | |
| 2020-12-09 Dmitry V. Levin <ldv@altlinux.org> | |
| * Makefile.am (noinst_PROGRAMS): Rename to noinst_DATA. | |
| (libelf_so_SOURCES): Remove. | |
| (CLEANFILES): Add libelf.so. | |
| 2020-11-30 Dmitry V. Levin <ldv@altlinux.org> | |
| * Makefile.am (libelf.so$(EXEEXT)): Drop $(EXEEXT) suffix. | |
| 2020-11-06 Mark Wielaard <mark@klomp.org> | |
| * elf-knowledge.h (SH_ENTSIZE_HASH): Update comment. | |
| 2020-11-01 Mark Wielaard <mark@klomp.org> | |
| * elf_strptr.c (elf_strptr): Check shdr is not NULL. | |
| 2020-11-01 Mark Wielaard <mark@klomp.org> | |
| * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Set *dst to zero on | |
| error. | |
| 2020-11-01 Mark Wielaard <mark@klomp.org> | |
| * libelfP.h (__libelf_data_type): Take an GElf_Ehdr instead of an | |
| Elf handle. | |
| * elf_getdata.c (__libelf_data_type): Likewise. And check ehdr | |
| directly instead of fetching a new one. | |
| (__libelf_set_rawdata_wrlock): Fetch Ehdr, report an error when that | |
| fails, otherwise call __libelf_data_type. | |
| 2020-10-28 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2020-08-28 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2020-08-19 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatenull.c (updatenull_wrlock): Fixup the sh_addralign | |
| of an SHF_COMPRESSED section if necessary. | |
| 2020-06-04 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2020-05-08 Mark Wielaard <mark@klomp.org> | |
| * elf_strptr.c (elf_strptr): Check shdr is not NULL. | |
| 2020-05-08 Mark Wielaard <mark@klomp.org> | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Check | |
| __gelf_getehdr_rdlock return value. | |
| 2020-04-25 Mark Wielaard <mark@klomp.org> | |
| * elf_compress.c (__libelf_compress): Remove free (out_buf). | |
| 2020-03-18 Omar Sandoval <osandov@fb.com> | |
| * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Call | |
| __elf{32,64}_getshdr_rdlock if the shdr is not cached. | |
| 2019-03-20 Matthias Maennich <maennich@google.com> | |
| * elf_compress.c (__libelf_compress): Always call deflate_cleanup | |
| in failure path. Call deflateEnd only once. | |
| (__libelf_decompress): Call inflateEnd only once. | |
| 2019-06-18 Mark Wielaard <mark@klomp.org> | |
| * common.h (allocate_elf): Use int64_t instead of off_t for offset. | |
| * elf32_newphdr.c (newphdr): Document why Elf32/64_Word is correct. | |
| * elf32_updatefile.c (fill): Use int64_t instead of off_t for pos. | |
| (updatefile): Define last_offset, shdr_offset and scn_start as | |
| int64_t instead of off_t. | |
| * elf32_updatenull.c: Define Elf32_SizeWord and Elf64_SizeWord. | |
| (updatenull_wrlock): Return int64_t instead of off_t. Define size, | |
| sh_entsize, sh_align and sh_size as SizeWords. Define offset as | |
| int64_t. Cast data->d_off to SizeWord instead of GElf_Word. Drop | |
| size GElf_Word cast. Cast offset to SizeWord instead of GElf_Word | |
| when comparing with sh_size. | |
| * elf_begin.c (get_shnum): Define offset as int64_t instead of | |
| off_t. Document why use GElf_Word is correct. | |
| (file_read_elf): Define offset as int64_t instead of off_t. | |
| (__libelf_read_mmaped_file): Likewise. | |
| (read_unmmaped_file): Likewise. | |
| (read_file): Likewise. | |
| * elf_getaroff.c (elf_getaroff): Return int64_t. | |
| * elf_getbase.c (elf_getbase): Likewise. | |
| * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Define offset as | |
| int64_t instead of off_t. | |
| * elf_update.c (write_file): Return int64_t instead of off_t, | |
| define size as int64_t instead of off_t. | |
| (elf_update): Likewise. | |
| * libelfP.h (struct Elf): Define start_offset, sizestr_offset and | |
| offset as int64_t. | |
| (__libelf_read_mmaped_file): Define offset as int64_t. | |
| (__elf32_updatenull_wrlock): Return int64_t. | |
| (__elf64_updatenull_wrlock): Return int64_t. | |
| 2019-05-12 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatenull.c (updatenull_wrlock): Mark shdr_flags dirty if | |
| either offset or size changed. | |
| 2019-05-01 Mark Wielaard <mark@klomp.org> | |
| * gelf_getnote.c (gelf_getnote): Check n_namesz doesn't overflow | |
| offset. | |
| 2019-04-30 Mark Wielaard <mark@klomp.org> | |
| * note_xlate.h (elf_cvt_note): Indicate we only translated the note | |
| header if we ran out of data by updating len, src and dest. | |
| 2019-04-01 Mao Han <han_mao@c-sky.com> | |
| * elf.h: Update from glibc. | |
| 2019-03-07 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatefile.c (updatemmap): Use posix_memalign instead of | |
| aligned_alloc. | |
| 2019-03-06 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatefile.c (updatemmap): Free scns before returning | |
| allocation failure. | |
| 2019-02-24 Mark Wielaard <mark@klomp.org> | |
| * gelf_xlate.c (__elf_xfctstof): Remove alias. | |
| * libelfP.h (__elf_xfctstof): Remove definition. | |
| 2019-02-24 Mark Wielaard <mark@klomp.org> | |
| * elf32_fsize.c (local_strong_alias): Remove definition. | |
| (msize): Remove alias. | |
| * libelfP.h (__elf32_msize): Remove definition. | |
| (__elf64_msize): Likewise. | |
| 2019-02-21 Mark Wielaard <mark@klomp.org> | |
| * common.h (determine_kind): Only accept EV_CURRENT. | |
| * elf32_fsize.c (fsize): Just check version is EV_CURRENT. | |
| Use __libelf_type_size without version dimension. | |
| * elf32_updatefile.c (updatemmap): Define fctp from __elf_xfctstom | |
| without version dimension. | |
| (updatefile): Likewise. | |
| * elf32_updatenull.c (default_ehdr): Check e_version is EV_CURRENT. | |
| (updatenull_wrlock): Check d_version is EV_CURRENT. | |
| (elf32_xlatetof): Likewise. And get recsize without version | |
| dimension from __elf_xfctstom. | |
| (elf32_xlatetom): Likewise. | |
| * elf_begin.c (elf_begin): Check __libelf_version is EV_CURRENT. | |
| * elf_compress.c (__libelf_reset_rawdata): Set d_version to | |
| EV_CURRENT. | |
| * elf_getdata.c (shtype_map): Remove version dimension. | |
| (__libelf_type_aligns): Likewise. | |
| (__libelf_data_type): Use shtype_map without version dimension. | |
| (convert_data): Remove unused version argument. Get fp from | |
| __elf_xfctstom without version dimensions. | |
| (__libelf_set_data_list_rdlock): Call convert_data without version. | |
| * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Call __elfcfctstom | |
| conversion function without version dimensions. Set d_version to | |
| EV_CURRENT. | |
| * elf_newdata.c (elf_newdata): Set d_version to EV_CURRENT. | |
| * elf_version.c (__libelf_version_initialized): Removed. | |
| (__libelf_version): Initialized to EV_NONE. | |
| (elf_version): Always return EV_CURRENT for EV_NONE version. | |
| Only accept (and return) EV_CURRENT as version. | |
| * gelf_fsize.c (__libelf_type_sizes): Remove version dimension. | |
| (gelf_fsize): Only accept EV_CURRENT as version. | |
| Use __libelf_type_sizes without version dimension. | |
| * gelf_xlate.c (__elf_xftstom): Remove version dimensions. | |
| * libelfP.h (__elf_xfctstom): Defined without version dimensions. | |
| (__elf_xfctstof): Likewise. | |
| (__libelf_type_sizes): Define without version dimension. | |
| (elf_typesize): Define using __libelf_type_sizes without version | |
| dimension. | |
| (__libelf_version_initialized): Remove definition. | |
| (__libelf_version): Add definition. | |
| (LIBELF_EV_IDX): Removed define. | |
| (__libelf_type_aligns): Remove version dimension. | |
| * nlist.c (nlist): Call elf_version unconditionally. | |
| 2019-02-19 Mark Wielaard <mark@klomp.org> | |
| * elf_compress.c (do_deflate_cleanup): Remove ei_data argument, | |
| check cdatap is not NULL before calling free. | |
| (deflate_cleanup): Add cdata as argument. | |
| (__libelf_compress): Also check whether the d_size is not zero | |
| before converting data. Call deflate_cleanup with an extra | |
| argument depending on whether there is converted data to free. | |
| Always allocate allocate at least one byte for buf_out. | |
| 2019-02-14 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (read_long_names): Make sure ar_size is properly | |
| terminated. Sanity check len early if we can. | |
| 2019-01-18 Mark Wielaard <mark@klomp.org> | |
| * Makefile.am (INSTALL_ELFH): Add elf.h to include_HEADERS when | |
| defined, otherwise (the default) add elf.h to noinst_HEADERS. | |
| 2019-01-16 Mark Wielaard <mark@klomp.org> | |
| * note_xlate.h (elf_cvt_note): Check n_namesz and n_descsz don't | |
| overflow note_len into note header. | |
| 2018-11-17 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatefile.c (updatemmap): Make sure to call convert | |
| function on a properly aligned destination. | |
| 2018-11-16 Mark Wielaard <mark@klomp.org> | |
| * libebl.h (__elf32_msize): Mark with const attribute. | |
| (__elf64_msize): Likewise. | |
| 2018-11-13 Mark Wielaard <mark@klomp.org> | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Explicitly set the | |
| alignment of SHF_COMPRESSED data to the alignment of ELF_T_CHDR. | |
| * elf_compress.c (elf_compress): After compression set sh_addralign | |
| to the alignment of ELF_T_CHDR. | |
| 2018-11-09 Mark Wielaard <mark@klomp.org> | |
| * elf_compress_gnu.c (elf_compress_gnu): Use elf_getdata. | |
| 2018-11-12 Mark Wielaard <mark@klomp.org> | |
| * elf-knowledge.c (ELF_NOTE_GNU_BUILD_ATTRIBUTE_PREFIX): New define. | |
| (NT_GNU_BUILD_ATTRIBUTE_{OPEN,FUNC}): Likewise. | |
| (GNU_BUILD_ATTRIBUTE_TYPE_{NUMERIC,STRING,BOOL_TRUE,BOOL_FALSE}): | |
| Likewise. | |
| (GNU_BUILD_ATTRIBUTE_{VERSION,STACK_PROT,RELRO,STACK_SIZE,TOOL,ABI, | |
| PIC,SHORT_ENUM}): Likewise. | |
| 2018-11-09 Mark Wielaard <mark@klomp.org> | |
| * elf_compress.c (__libelf_reset_rawdata): Make rawdata change | |
| explicit by calling __libelf_set_data_list. | |
| * elf_getdata.c (convert_data): Don't convert if type is ELF_T_BYTE | |
| even if endianness is different. | |
| 2018-10-18 Mark Wielaard <mark@klomp.org> | |
| * libelf.h (Elf_Type): Add ELF_T_NHDR8. | |
| * libelfP.h (__libelf_data_type): Add align argument. | |
| (NOTE_ALIGN): Split into... | |
| (NOTE_ALIGN4): ... and ... | |
| (NOTE_ALIGN8): this. | |
| * elf32_xlatetom.c (xlatetom): Recognize both ELF_T_NHDR and | |
| ELF_T_NHDR8. | |
| * elf_compress.c (elf_compress): Pass zdata_align to | |
| __libelf_data_type. | |
| * elf_compress_gnu.c (elf_compress_gnu): Pass sh_addralign to | |
| __libelf_data_type. | |
| * elf_getdata.c (shtype_map): Add ELF_T_NHDR8. | |
| (__libelf_data_type): Take align as extra argument, use it to | |
| determine Elf_Type. | |
| (__libelf_set_rawdata_wrlock): Recognize ELF_T_NHDR8. Pass align to | |
| __libelf_data_type. | |
| * gelf_fsize.c (__libelf_type_sizes): Add ELF_T_NHDR8. | |
| * gelf_getnote.c (gelf_getnote): Use Elf_Type of Elf_Data to calculate | |
| padding. | |
| * gelf_xlate.c (__elf_xfctstom): Set ELF_T_NHDR to elf_cvt_note4, | |
| add ELF_T_NHDR8. | |
| * note_xlate.h (elf_cvt_note): Take nhdr8 argument and use it to | |
| determine padding. | |
| (elf_cvt_note4): New function. | |
| (elf_cvt_note8): Likewise. | |
| 2018-09-13 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatefile.c (updatemmap): Use shnum, not ehdr->e_shnum. | |
| * elf_getscn.c (elf_getscn): Create section zero if it is requested, | |
| but doesn't exist yet. | |
| 2018-09-12 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatefile.c (updatemmap): Use memmove, not memcpy. | |
| * elf_update.c (write_file): Try to mremap if file needs to be | |
| extended. | |
| 2018-08-18 Mark Wielaard <mark@klomp.org> | |
| * libelf.h (elf_compress_gnu): Add documentation about | |
| interaction between SHF_COMPRESED and elf_compress_gnu. | |
| * elf_compress_gnu.c (elf_compress_gnu): Return error if section | |
| sh_flags has SHF_COMPRESSED set. | |
| 2018-07-27 Mark Wielaard <mark@klomp.org> | |
| * libelf.h (elf_getshdrstrndx): Fix documentation. | |
| (elf_getshstrndx): Likewise. | |
| 2018-06-19 Mark Wielaard <mark@klomp.org> | |
| * libelfP.h (__libelf_type_align): Remove !ALLOW_UNALIGNED guard. | |
| * elf_getdata.c (__libelf_type_aligns): Likewise. | |
| (convert_data): Remove ALLOW_UNALIGNED check. | |
| * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Likewise. | |
| 2018-06-21 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2018-04-19 Andreas Schwab <schwab@suse.de> | |
| * elf.h: Update from glibc. | |
| 2018-02-16 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. | |
| 2018-02-09 Joshua Watt <JPEWhacker@gmail.com> | |
| * elf32_updatenull.c (updatenull_wrlock): Use FALLTHROUGH macro | |
| instead of comment. | |
| * elf_begin.c (read_unmmaped_file): Likewise. | |
| (elf_begin): Likewise. | |
| * elf_cntl.c (elf_cntl): Likewise. | |
| 2017-10-04 Mark Wielaard <mark@klomp.org> | |
| * elf_begin.c (file_read_elf): Skip sanity checking e_shoff if scncnt | |
| is zero, we won't use it then. | |
| 2017-10-04 Mark Wielaard <mark@klomp.org> | |
| * libelfP.h: Add ELF_E_INVALID_ELF to error values enum. | |
| * elf_error.c (ELF_E_INVALID_ELF_IDX): New define. Use it as value | |
| for ELF_E_INVALID_ELF in msgidx. | |
| * elf_getshdrstrndx.c (elf_getshdrstrndx): Distinquish between pread | |
| failing and not having enough data. | |
| * elf_begin.c (get_shnum): Likewise. Explicitly set libelf errno on | |
| too large value. | |
| (file_read_elf): Make sure to always set libelf errno when returning | |
| NULL. Distinquish between i/o file and elf data errors. | |
| 2017-08-18 Ulf Hermann <ulf.hermann@qt.io> | |
| * gelf_xlate.c: Use attribute_packed. | |
| 2017-04-27 Ulf Hermann <ulf.hermann@qt.io> | |
| * libelfP.h: Use attribute_hidden. | |
| 2017-04-27 Ulf Hermann <ulf.hermann@qt.io> | |
| * Makefile.am: Use fpic_CFLAGS and dso_LDFLAGS. | |
| 2017-08-15 Mark Wielaard <mark@klomp.org> | |
| * elf.h: Update from glibc. Add new powerpc note descriptors. | |
| 2017-07-19 Gustavo Romero <gromero@linux.vnet.ibm.com> | |
| * elf.h: Add known type in notes segment descriptor for HTM SPRs. | |
| 2017-02-17 Ulf hermann <ulf.hermann@qt.io> | |
| * Makefile.am: Add libelf_so_DEPS, which include libeu.a, | |
| libelf_so_LIBS. | |
| (libelf_so_LDLIBS): Add $(libelf_so_DEPS). | |
| (libelf.so$(EXEEXT): Use $(libelf_so_LIBS), require libelf.map | |
| from the right directory. | |
| 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> | |
| * libelfP.h: Don't include config.h. | |
| 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> | |
| * elf_begin.c: Use F_GETFD rather than F_GETFL. | |
| 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> | |
| * libelf.h: Define macros for various function attributes and use | |
| them. | |
| 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> | |
| * elf_update.c: Set ELF_F_MMAPPED flag if we mmap from elf_update. | |
| 2017-04-19 Mark Wielaard <mark@klomp.org> | |
| * elf_getarsym.c (elf_getarsym): Initialize n to zero. | |
| 2017-03-27 Mark Wielaard <mark@klomp.org> | |
| * elf32_updatefile.c (updatemmap): Always update last_positition. | |
| (updatefile): Likewise. | |
| 2017-03-24 Mark Wielaard <mark@klomp.org> | |
| * elf_compress.c (__libelf_decompress): Check insane compression | |
| ratios before trying to allocate output buffer. | |
| 2016-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> | |
| Mark Wielaard <mjw@redhat.com> | |
| * gelf.h (gelf_newehdr): Change return type to void *. | |
| (gelf_newphdr): Likewise. | |
| * gelf_newehdr.c (gelf_newehdr): Likewise. | |
| * gelf_newphdr.c (gelf_newphdr): Likewise. | |
| 2016-10-21 Mark Wielaard <mjw@redhat.com> | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Sanity check | |
| offset and size before trying to malloc and read data. | |
| 2016-10-26 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (read_file): Always set maxsize when parent == NULL. | |
| 2016-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> | |
| * elf_getarsym.c (elf_getarsym): Open code rawmemchr when not | |
| available. | |
| * elf_strptr.c: Include stdbool.h. | |
| (validate_str): New function. | |
| (elf_strptr): Use validate_str instead of memrchr. | |
| 2016-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> | |
| * elf32_updatefile.c: Remove sys/param.h include. | |
| * elf32_updatenull.c: Likewise. Add system.h include. | |
| * elf_begin.c: Remove sys/param.h. | |
| * elf_compress: Likewise. Add system.h include. | |
| (MAX): Remove definition. | |
| 2016-08-07 Mark Wielaard <mjw@redhat.com> | |
| * elf_compress.c (__libelf_reset_rawdata): Check scn->flags and | |
| free rawdata_base when malloced. Set ELF_F_MALLOCED for scn->flags. | |
| * elf_end.c (elf_end): Check scn->flags and free rawdata_base if | |
| malloced. | |
| * libelfP.h (struct Elf_Scn): Document flags ELF_F_MALLOCED usage. | |
| 2016-07-06 Mark Wielaard <mjw@redhat.com> | |
| * elf-knowledge.h (SH_FLAGS_COMBINE): Removed. | |
| (SH_FLAGS_IMPORTANT): Likewise. | |
| 2016-07-06 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatenull.c (updatenull_wrlock): Ignore e_type when | |
| updating phdrs. | |
| * elf_getphdrnum.c (__elf_getphdrnum_chk_rdlock): Only do sanity | |
| checking if phdrs haven't been read in yet. | |
| 2016-06-24 John Ogness <john.ogness@linutronix.de> | |
| * elf32_updatenull.c (updatenull_wrlock): Find first section. | |
| * elf_nextscn.c (elf_nextscn): When scn is NULL start from 0th | |
| section. | |
| 2016-06-28 Richard Henderson <rth@redhat.com> | |
| * elf.h: Update from glibc. Add lots of new EM_* definitions. | |
| 2016-04-14 Mark Wielaard <mjw@redhat.com> | |
| * elf_compress.c (__libelf_compress): Free out_buf if deflateInit | |
| fails. | |
| 2016-02-13 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatefile.c (updatemmap): Free scns when out of memory. | |
| 2016-01-28 Mark Wielaard <mjw@redhat.com> | |
| * elf.h: Update from glibc. Add new i386 and x86_64 relocations. | |
| 2016-02-12 Mark Wielaard <mjw@redhat.com> | |
| * elf.h: Update from glibc. Add NT_ARM_SYSTEM_CALL. | |
| 2016-02-04 Mark Wielaard <mjw@redhat.com> | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Don't adjust align | |
| for SHT_NOBITS sections. | |
| 2016-01-22 Chih-Hung Hsieh <chh@google.com> | |
| * elf_compress.c (__libelf_compress): Move nested function | |
| 'do_deflate_cleanup' to file scope to compile with clang. | |
| * elf_strptr.c (elf_strptr): Move nested function 'get_zdata' | |
| to file scope to compile with clang. | |
| 2016-01-13 Mark Wielaard <mjw@redhat.com> | |
| * libelf.h: Check SHF_COMPRESSED is defined. If not define it and the | |
| associated ELF compression types/defines. | |
| 2015-11-26 Mark Wielaard <mjw@redhat.com> | |
| * elf_compress.c (__libelf_decompress_elf): New function, extracted | |
| from... | |
| (elf_compress): here. Check zdata_base use __libelf_decompress_elf. | |
| * elf_strptr.c (elf_strptr): If SHF_COMPRESSED check, uncompress and | |
| use zdata. | |
| * libelfP.h (struct Elf_Scn): Add zdata_size and zdata_align. | |
| (__libelf_decompress_elf): New internal function definition. | |
| 2015-10-21 Mark Wielaard <mjw@redhat.com> | |
| * Makefile.am (libelf_a_SOURCES): Add elf_compress.c and | |
| elf_compress_gnu.c. | |
| * elf_compress.c: New file. | |
| * elf_compress_gnu.c: Likewise. | |
| * elf_begin.c (file_read_elf): Make a writable copy of the shdrs | |
| for ELF_C_READ_MMAP. | |
| * elf_end.c (elf_end): Free zdata_base. | |
| * elf_error.c: Add ELF_E_ALREADY_COMPRESSED, | |
| ELF_E_UNKNOWN_COMPRESSION_TYPE, ELF_E_COMPRESS_ERROR and | |
| ELF_E_DECOMPRESS_ERROR. | |
| * elf_data.c (__libelf_data_type): New internal function extracted | |
| from convert_data. | |
| (convert_data): Handle SHF_COMPRESSED. | |
| * elf32_updatenull.c (updatenull_wrlock): Check sh_entsize against | |
| uncompressed section data size if SHF_COMPRESSED. | |
| * elf32_getshdr.c (load_shdr_wrlock): Adjust assert to account for | |
| ELF_C_READ_MMAP. | |
| * libelf.h: Define elf_compress and elf_compress_gnu. | |
| * libelf.map (ELFUTILS_1.7): Add elf_compress and elf_compress_gnu. | |
| * libelfP.h: Add ELF_E_ALREADY_COMPRESSED, | |
| ELF_E_UNKNOWN_COMPRESSION_TYPE, ELF_E_COMPRESS_ERROR and | |
| ELF_E_DECOMPRESS_ERROR. Define __libelf_data_type. | |
| (__libelf_compress): New internal function definition. | |
| (__libelf_decompress): Likewise. | |
| (__libelf_reset_rawdata): Likewise. | |
| (__libelf_data_type): Likewise. | |
| (struct Elf_Scn): Add zdata_base. | |
| 2015-11-19 Mark Wielaard <mjw@redhat.com> | |
| * Makefile.am (libelf_a_SOURCES): Add elf32_getchdr.c, | |
| elf64_getchdr.c and gelf_getchdr.c. | |
| (noinst_HEADERS): Add chdr_xlate.h. | |
| * abstract.h: Define Chdr32 and Chdr64. | |
| * chdr_xlate.h: New file. | |
| * elf32_getchdr.c: New file. | |
| * elf64_getchdr.c: New file. | |
| * elf_error.c: Add ELF_E_NOT_COMPRESSED, ELF_E_INVALID_SECTION_TYPE | |
| and ELF_E_INVALID_SECTION_FLAGS. | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Set d_type to | |
| ELF_T_CHDR for SHF_COMPRESSED sections. | |
| * exttypes.h: Add Chdr32 and Chdr64. | |
| * gelf.h (GElf_Chdr): New typedef. | |
| (gelf_getchdr): New function definition. | |
| * gelf_fsize.c (__libelf_type_sizes): Add ELF_T_CHDR. | |
| * gelf_getchdr.c: New file. | |
| * gelf_xlate.c (__elf_xfctstom): Add ELF_T_CHDR cvt_chdr. | |
| * gelf_xlate.h: Add Chdr. | |
| * libelf.h (Elf_Type): Add ELF_T_CHDR. | |
| (elf32_getchdr): New function definition. | |
| (elf64_getchdr): Likewise. | |
| * libelf.map (ELFUTILS_1.7): New sections add elf32_getchdr, | |
| elf64_getchdr and gelf_getchdr. | |
| * libelfP.h: Add ELF_E_NOT_COMPRESSED, ELF_E_INVALID_SECTION_TYPE | |
| and ELF_E_INVALID_SECTION_FLAGS. | |
| 2015-10-16 Mark Wielaard <mjw@redhat.com> | |
| * Makefile.am (libelf_so_LDLIBS): Add -lz. | |
| 2015-10-14 Mark Wielaard <mjw@redhat.com> | |
| * elf.h: Update from glibc. Add section compression constants and | |
| structures. | |
| 2015-10-20 Jose E. Marchesi <jose.marchesi@oracle.com> | |
| * elf_begin.c (get_shnum): Elf64_Shdr.sh_size is an Elf64_Xword. | |
| Fix the size argument to pread_retry. | |
| 2015-10-13 Chih-Hung Hsieh <chh@google.com> | |
| * elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Move nested | |
| function 'fill_mmap' to file scope. | |
| * elf_begin.c (elf_begin): Move nested function 'lock_dup_elf' | |
| to file scope. | |
| 2015-10-09 Josh Stone <jistone@redhat.com> | |
| * libelf.h: Replace loff_t with int64_t throughout. | |
| 2015-10-05 Mark Wielaard <mjw@redhat.com> | |
| * elf_update.c (write_file): Only use posix_fallocate when using | |
| mmap. Only report failure when errno is ENOSPC. | |
| 2015-10-09 Josh Stone <jistone@redhat.com> | |
| * libelfP.h (struct Elf): Replace off64_t with off_t. | |
| * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Likewise. | |
| 2015-10-05 Chih-Hung Hsieh <chh@google.com> | |
| * elf_getarsym.c (elf_getarsym): Do not use | |
| union of variable length arrays. | |
| 2015-10-05 Josh Stone <jistone@redhat.com> | |
| * Makefile.am (libelf.so): Add AM_V_CCLD and AM_V_at silencers. | |
| 2015-09-24 Jose E. Marchesi <jose.marchesi@oracle.com> | |
| * Makefile.am (AM_CFLAGS): Use -fPIC instead of -fpic to avoid | |
| relocation overflows in some platforms. | |
| 2015-09-29 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatenull.c (default_ehdr): Set e_version when EV_NONE. | |
| (updatenull_wrlock): Always set e_shentsize. | |
| 2015-09-23 Mark Wielaard <mjw@redhat.com> | |
| * elf32_getehdr.c (getehdr_wrlock): Mark as internal_function. | |
| * elf32_getshdr.c (getshdr_rdlock): Likewise. | |
| (getshdr_wrlock): Likewise. | |
| * elf_error.c (__libelf_seterrno): Likewise. | |
| * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Likewise. | |
| (__elf_getphdrnum_chk_rdlock): Likewise. | |
| * elf_getshdrnum.c (__elf_getphdrnum_rdlock): Likewise. | |
| (__elf_getphdrnum_chk_rdlock): Likewise. | |
| * elf_getshdrnum.c (__elf_getshdrnum_rdlock): Likewise. | |
| * elf_readall.c (__libelf_readall): Likewise. | |
| * gelf_getehdr.c (__gelf_getehdr_rdlock): Likewise. | |
| 2015-09-22 Mark Wielaard <mjw@redhat.com> | |
| * *.c: Remove old-style function definitions. | |
| 2015-06-22 Mark Wielaard <mjw@redhat.com> | |
| * dl-hash.h: Update from glibc. | |
| 2015-06-18 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatefile.c (updatefile): Always free shdr_data and scns | |
| when allocated on failure paths. | |
| 2015-06-18 Mark Wielaard <mjw@redhat.com> | |
| * nlist.c (nlist): Check symscn shdr exists before use. | |
| 2015-06-16 Mark Wielaard <mjw@redhat.com> | |
| * elf_update.c (write_file): Always also use ftruncate before | |
| posix_fallocate to make sure file has the right size. | |
| 2015-06-04 Mark Wielaard <mjw@redhat.com> | |
| * elf_getdata.c (__libelf_type_aligns): Add entries for ELF_T_EHDR, | |
| ELF_T_OFF, ELF_T_PHDR, ELF_T_SHDR, ELF_T_SWORD, ELF_T_XWORD, | |
| ELF_T_SXWORD, ELF_T_GNUHASH, ELF_T_AUXV. | |
| * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Check alignment | |
| of rawdata against requested type. | |
| 2015-06-02 Mark Wielaard <mjw@redhat.com> | |
| * elf_getdata.c (convert_data): Make sure source data is properly | |
| aligned for type before calling actual conversion function. | |
| 2015-06-04 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (get_shnum): Check alignment of Shdr, not Ehdr before | |
| direct access. | |
| 2015-06-02 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (file_read_elf): Split checks for ehdr and shdr | |
| alignment, drop phdr alignment check. | |
| 2015-05-31 Mark Wielaard <mjw@redhat.com> | |
| * elf32_getshdr.c (load_shdr_wrlock): Allocate shdrs with malloc, | |
| not alloca and free after conversion when a copy needs to be made. | |
| 2015-05-31 Mark Wielaard <mjw@redhat.com> | |
| * elf32_getphdr.c (getphdr_wrlock): Allocate phdrs with malloc, not | |
| alloca and free after conversion when a copy needs to be made. | |
| 2015-05-31 Mark Wielaard <mjw@redhat.com> | |
| * elf_getarsym.c (elf_getarsym): Allocate temporary file_date with | |
| malloc, not alloca also in !ALLOW_UNALIGNED case. | |
| 2015-05-30 Mark Wielaard <mjw@redhat.com> | |
| * gelf_xlate.c (elf_cvt_Byte): Only call memmove with non-zero size. | |
| 2015-05-30 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatefile.c (updatemmap): Only call mempcpy and update | |
| last_position when d_size is non-zero. | |
| 2015-05-17 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatefile.c (updatefile): Allocate shdr_data and scns | |
| with malloc, not alloca. Free after writing section headers. | |
| 2015-05-16 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatefile.c (updatemmap): Allocate temporary shdr storage | |
| with malloc, not alloca. Free after writing section header. | |
| 2015-05-16 Mark Wielaard <mjw@redhat.com> | |
| * elf_getarsym.c (elf_getarsym): Allocate temporary file_date with | |
| malloc, not alloca. Call free after out. | |
| 2015-05-14 Mark Wielaard <mjw@redhat.com> | |
| * elf_update.c (write_file): Use posix_fallocate instead of | |
| ftruncate to extend file if necessary. | |
| 2015-05-13 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatenull.c (default_ehdr): If e_phnum is zero then set | |
| e_phoff also to zero. | |
| 2015-05-12 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatenull.c (updatenull_wrlock): Check that sh_addralign | |
| is a powerof2. | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Clamp large d_aligns | |
| to the elf image offset. | |
| 2015-05-12 Mark Wielaard <mjw@redhat.com> | |
| * elf32_newphdr.c (newphdr): Call __libelf_seterrno with | |
| ELF_E_INVALID_INDEX before failing. Check whether section zero shdr | |
| actually exists if we need to put extended phnum in section zero. | |
| 2015-05-08 Mark Wielaard <mjw@redhat.com> | |
| * nlist.c (nlist): Call gelf_fsize with EV_CURRENT. | |
| 2015-01-03 Mark Wielaard <mjw@redhat.com> | |
| * version_xlate.h (elf_cvt_Verdef): Use memmove to copy src to dest. | |
| (elf_cvt_Verneed): Likewise. | |
| 2015-03-28 Mark Wielaard <mjw@redhat.com> | |
| * elf.h: Update from glibc. | |
| 2015-03-23 Mark Wielaard <mjw@redhat.com> | |
| * elf32_updatenull.c (updatenull_wrlock): Don't extend size with | |
| SHT_NOBITS sh_offset. | |
| 2015-02-18 Mark Wielaard <mjw@redhat.com> | |
| * libelfP.h (__libelf_set_data_list_rdlock): Make internal_function. | |
| 2015-02-07 Jan Kratochvil <jan.kratochvil@redhat.com> | |
| * elf32_updatenull.c (__elfw2(LIBELFBITS,updatenull_wrlock)): Consider | |
| sh_addralign 0 as 1. | |
| 2015-01-22 Mark Wielaard <mjw@redhat.com> | |
| * elf_strptr (elf_strptr): Make sure returned string is NUL | |
| terminated. | |
| 2015-01-21 Mark Wielaard <mjw@redhat.com> | |
| * elf_strptr.c (elf_strptr): Check data_list_rear == NULL instead | |
| of rawdata_base != NULL before using rawdata directly. | |
| 2015-01-20 Mark Wielaard <mjw@redhat.com> | |
| * libelfP.h (__elf_strptr_internal): New function declaration. | |
| * elf_getdata.c (__libelf_set_data_list_rdlock): New internal | |
| function extracted from... | |
| (__elf_getdata_rdlock): ... here. | |
| * elf_newdata.c (elf_newdata): Check scn->rawdata_base and update | |
| datalist if necessary. | |
| 2015-01-20 Mark Wielaard <mjw@redhat.com> | |
| * elf_strptr.c (elf_strptr): Call __elf[32|64]_getshdr_rdlock if | |
| necessary. | |
| 2014-12-30 Mark Wielaard <mjw@redhat.com> | |
| * elf_getphdrnum.c (__elf_getphdrnum_chk_rdlock): New function. | |
| (elf_getphdrnum): Call __elf_getphdrnum_chk_rdlock. | |
| * gelf_getphdr (gelf_getphdr): Call __elf_getphdrnum_chk_rdlock | |
| and always check ndx against phnum. | |
| * libelfP.h (__elf_getphdrnum_chk_rdlock): New internal function. | |
| 2014-12-25 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (__libelf_next_arhdr_wrlock): ar_size cannot be | |
| negative. Include start_offset in maxsize. | |
| 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. | |
| 2014-12-16 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (read_long_names): Make sure long_names len fits | |
| in mapped ELF file. | |
| 2014-12-15 Mark Wielaard <mjw@redhat.com> | |
| * elf_getarsym.c (elf_getarsym): Check index_size doesn't overflow. | |
| 2014-12-15 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (read_long_names): Clear any garbage left in the | |
| name table. | |
| 2014-12-11 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (file_read_elf): Correct ELF64 section offset check. | |
| 2014-12-11 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (read_long_names): Check for offset overflow. | |
| (__libelf_next_arhdr_wrlock): Likewise. Sanity check the ar_size. | |
| Don't allow it to go beyond end of file. | |
| 2014-12-09 Mark Wielaard <mjw@redhat.com> | |
| * elf_getarsym.c (elf_getarsym): Make sure n * w doesn't overflow. | |
| 2014-11-27 Mark Wielaard <mjw@redhat.com> | |
| * Makefile.am (libelf.so): Use textrel_check. | |
| 2014-11-23 Mark Wielaard <mjw@redhat.com> | |
| * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Change signed | |
| overflow check to unsigned. | |
| 2014-11-23 Mark Wielaard <mjw@redhat.com> | |
| * note_xlate.h (elf_cvt_note): Copy over any leftover data if | |
| src != dest. The data is probably part of truncated name/desc. | |
| 2014-11-22 Mark Wielaard <mjw@redhat.com> | |
| * elf_getphdrnum.c (elf_getphdrnum): Sanity check the | |
| __elf_getphdrnum_rdlock result. | |
| 2014-11-18 Mark Wielaard <mjw@redhat.com> | |
| * version_xlate.h (elf_cvt_Verdef): Check for overflow. | |
| (elf_cvt_Verneed): Likewise. | |
| 2014-11-17 Mark Wielaard <mjw@redhat.com> | |
| * elf-knowledge.h (SECTION_STRIP_P): Check name is not NULL. | |
| 2014-11-16 Mark Wielaard <mjw@redhat.com> | |
| * elf_getshdrstrndx.c: Check there are section headers before | |
| handling SHN_XINDEX. | |
| 2014-11-16 Mark Wielaard <mjw@redhat.com> | |
| * elf32_getphdr.c (getphdr_wrlock): Check e_phoff isn't zero. | |
| Check for too many pheaders. | |
| * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Check section zero | |
| actually exists before handling PN_XNUM. | |
| 2014-11-16 Mark Wielaard <mjw@redhat.com> | |
| * gelf_getnote.c (gelf_getnote): Check padding overflow. | |
| 2014-11-16 Mark Wielaard <mjw@redhat.com> | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Declare offset, size | |
| and align as Elf64_Off and Elf64_Xword not size_t. | |
| 2014-11-14 Mark Wielaard <mjw@redhat.com> | |
| * gelf_getnote.c (gelf_getnote): Check offset overflow. | |
| 2014-11-13 Mark Wielaard <mjw@redhat.com> | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Fix unsigned overflow | |
| check. | |
| 2014-11-08 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (__libelf_next_arhdr_wrlock): Use mempcpy not __mempcpy. | |
| 2014-11-07 Mark Wielaard <mjw@redhat.com> | |
| * elf_begin.c (file_read_elf): Correct sh_size check. | |
| * elf_getdata.c (__libelf_set_rawdata_wrlock): Check for unsigned | |
| overflow. | |
| 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. |