1905 lines
		
	
	
		
			60 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			1905 lines
		
	
	
		
			60 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 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.
 |