Home | History | Annotate | Download | only in libelf
      1 2019-02-24  Mark Wielaard  <mark (a] klomp.org>
      2 
      3 	* gelf_xlate.c (__elf_xfctstof): Remove alias.
      4 	* libelfP.h (__elf_xfctstof): Remove definition.
      5 
      6 2019-02-24  Mark Wielaard  <mark (a] klomp.org>
      7 
      8 	* elf32_fsize.c (local_strong_alias): Remove definition.
      9 	(msize): Remove alias.
     10 	* libelfP.h (__elf32_msize): Remove definition.
     11 	(__elf64_msize): Likewise.
     12 
     13 2019-02-21  Mark Wielaard  <mark (a] klomp.org>
     14 
     15 	* common.h (determine_kind): Only accept EV_CURRENT.
     16 	* elf32_fsize.c (fsize): Just check version is EV_CURRENT.
     17 	Use __libelf_type_size without version dimension.
     18 	* elf32_updatefile.c (updatemmap): Define fctp from __elf_xfctstom
     19 	without version dimension.
     20 	(updatefile): Likewise.
     21 	* elf32_updatenull.c (default_ehdr): Check e_version is EV_CURRENT.
     22 	(updatenull_wrlock): Check d_version is EV_CURRENT.
     23 	(elf32_xlatetof): Likewise. And get recsize without version
     24 	dimension from __elf_xfctstom.
     25 	(elf32_xlatetom): Likewise.
     26 	* elf_begin.c (elf_begin): Check __libelf_version is EV_CURRENT.
     27 	* elf_compress.c (__libelf_reset_rawdata): Set d_version to
     28 	EV_CURRENT.
     29 	* elf_getdata.c (shtype_map): Remove version dimension.
     30 	(__libelf_type_aligns): Likewise.
     31 	(__libelf_data_type): Use shtype_map without version dimension.
     32 	(convert_data): Remove unused version argument. Get fp from
     33 	__elf_xfctstom without version dimensions.
     34 	(__libelf_set_data_list_rdlock): Call convert_data without version.
     35 	* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Call __elfcfctstom
     36 	conversion function without version dimensions. Set d_version to
     37 	EV_CURRENT.
     38 	* elf_newdata.c (elf_newdata): Set d_version to EV_CURRENT.
     39 	* elf_version.c (__libelf_version_initialized): Removed.
     40 	(__libelf_version): Initialized to EV_NONE.
     41 	(elf_version): Always return EV_CURRENT for EV_NONE version.
     42 	Only accept (and return) EV_CURRENT as version.
     43 	* gelf_fsize.c (__libelf_type_sizes): Remove version dimension.
     44 	(gelf_fsize): Only accept EV_CURRENT as version.
     45 	Use __libelf_type_sizes without version dimension.
     46 	* gelf_xlate.c (__elf_xftstom): Remove version dimensions.
     47 	* libelfP.h (__elf_xfctstom): Defined without version dimensions.
     48 	(__elf_xfctstof): Likewise.
     49 	(__libelf_type_sizes): Define without version dimension.
     50 	(elf_typesize): Define using __libelf_type_sizes without version
     51 	dimension.
     52 	(__libelf_version_initialized): Remove definition.
     53 	(__libelf_version): Add definition.
     54 	(LIBELF_EV_IDX): Removed define.
     55 	(__libelf_type_aligns): Remove version dimension.
     56 	* nlist.c (nlist): Call elf_version unconditionally.
     57 
     58 2019-02-19  Mark Wielaard  <mark (a] klomp.org>
     59 
     60 	* elf_compress.c (do_deflate_cleanup): Remove ei_data argument,
     61 	check cdatap is not NULL before calling free.
     62 	(deflate_cleanup): Add cdata as argument.
     63 	(__libelf_compress): Also check whether the d_size is not zero
     64 	before converting data. Call deflate_cleanup with an extra
     65 	argument depending on whether there is converted data to free.
     66 	Always allocate allocate at least one byte for buf_out.
     67 
     68 2019-02-14  Mark Wielaard  <mark (a] klomp.org>
     69 
     70 	* elf_begin.c (read_long_names): Make sure ar_size is properly
     71 	terminated. Sanity check len early if we can.
     72 
     73 2019-01-18  Mark Wielaard  <mark (a] klomp.org>
     74 
     75 	* Makefile.am (INSTALL_ELFH): Add elf.h to include_HEADERS when
     76 	defined, otherwise (the default) add elf.h to noinst_HEADERS.
     77 
     78 2019-01-16  Mark Wielaard  <mark (a] klomp.org>
     79 
     80 	* note_xlate.h (elf_cvt_note): Check n_namesz and n_descsz don't
     81 	overflow note_len into note header.
     82 
     83 2018-11-17  Mark Wielaard  <mark (a] klomp.org>
     84 
     85 	* elf32_updatefile.c (updatemmap): Make sure to call convert
     86 	function on a properly aligned destination.
     87 
     88 2018-11-16  Mark Wielaard  <mark (a] klomp.org>
     89 
     90 	* libebl.h (__elf32_msize): Mark with const attribute.
     91 	(__elf64_msize): Likewise.
     92 
     93 2018-11-13  Mark Wielaard  <mark (a] klomp.org>
     94 
     95 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Explicitly set the
     96 	alignment of SHF_COMPRESSED data to the alignment of ELF_T_CHDR.
     97 	* elf_compress.c (elf_compress): After compression set sh_addralign
     98 	to the alignment of ELF_T_CHDR.
     99 
    100 2018-11-09  Mark Wielaard  <mark (a] klomp.org>
    101 
    102 	* elf_compress_gnu.c (elf_compress_gnu): Use elf_getdata.
    103 
    104 2018-11-12  Mark Wielaard  <mark (a] klomp.org>
    105 
    106 	* elf-knowledge.c (ELF_NOTE_GNU_BUILD_ATTRIBUTE_PREFIX): New define.
    107 	(NT_GNU_BUILD_ATTRIBUTE_{OPEN,FUNC}): Likewise.
    108 	(GNU_BUILD_ATTRIBUTE_TYPE_{NUMERIC,STRING,BOOL_TRUE,BOOL_FALSE}):
    109 	Likewise.
    110 	(GNU_BUILD_ATTRIBUTE_{VERSION,STACK_PROT,RELRO,STACK_SIZE,TOOL,ABI,
    111 	PIC,SHORT_ENUM}): Likewise.
    112 
    113 2018-11-09  Mark Wielaard  <mark (a] klomp.org>
    114 
    115 	* elf_compress.c (__libelf_reset_rawdata): Make rawdata change
    116 	explicit by calling __libelf_set_data_list.
    117 	* elf_getdata.c (convert_data): Don't convert if type is ELF_T_BYTE
    118 	even if endianness is different.
    119 
    120 2018-10-18  Mark Wielaard  <mark (a] klomp.org>
    121 
    122 	* libelf.h (Elf_Type): Add ELF_T_NHDR8.
    123 	* libelfP.h (__libelf_data_type): Add align argument.
    124 	(NOTE_ALIGN): Split into...
    125 	(NOTE_ALIGN4): ... and ...
    126 	(NOTE_ALIGN8): this.
    127 	* elf32_xlatetom.c (xlatetom): Recognize both ELF_T_NHDR and
    128 	ELF_T_NHDR8.
    129 	* elf_compress.c (elf_compress): Pass zdata_align to
    130 	__libelf_data_type.
    131 	* elf_compress_gnu.c (elf_compress_gnu): Pass sh_addralign to
    132 	__libelf_data_type.
    133 	* elf_getdata.c (shtype_map): Add ELF_T_NHDR8.
    134 	(__libelf_data_type): Take align as extra argument, use it to
    135 	determine Elf_Type.
    136 	(__libelf_set_rawdata_wrlock): Recognize ELF_T_NHDR8. Pass align to
    137 	__libelf_data_type.
    138 	* gelf_fsize.c (__libelf_type_sizes): Add ELF_T_NHDR8.
    139 	* gelf_getnote.c (gelf_getnote): Use Elf_Type of Elf_Data to calculate
    140 	padding.
    141 	* gelf_xlate.c (__elf_xfctstom): Set ELF_T_NHDR to elf_cvt_note4,
    142 	add ELF_T_NHDR8.
    143 	* note_xlate.h (elf_cvt_note): Take nhdr8 argument and use it to
    144 	determine padding.
    145 	(elf_cvt_note4): New function.
    146 	(elf_cvt_note8): Likewise.
    147 
    148 2018-09-13  Mark Wielaard  <mark (a] klomp.org>
    149 
    150 	* elf32_updatefile.c (updatemmap): Use shnum, not ehdr->e_shnum.
    151 	* elf_getscn.c (elf_getscn): Create section zero if it is requested,
    152 	but doesn't exist yet.
    153 
    154 2018-09-12  Mark Wielaard  <mark (a] klomp.org>
    155 
    156 	* elf32_updatefile.c (updatemmap): Use memmove, not memcpy.
    157 	* elf_update.c (write_file): Try to mremap if file needs to be
    158 	extended.
    159 
    160 2018-08-18  Mark Wielaard  <mark (a] klomp.org>
    161 
    162 	* libelf.h (elf_compress_gnu): Add documentation about
    163 	interaction between SHF_COMPRESED and elf_compress_gnu.
    164 	* elf_compress_gnu.c (elf_compress_gnu): Return error if section
    165 	sh_flags has SHF_COMPRESSED set.
    166 
    167 2018-07-27  Mark Wielaard  <mark (a] klomp.org>
    168 
    169 	* libelf.h (elf_getshdrstrndx): Fix documentation.
    170 	(elf_getshstrndx): Likewise.
    171 
    172 2018-06-19  Mark Wielaard  <mark (a] klomp.org>
    173 
    174 	* libelfP.h (__libelf_type_align): Remove !ALLOW_UNALIGNED guard.
    175 	* elf_getdata.c (__libelf_type_aligns): Likewise.
    176 	(convert_data): Remove ALLOW_UNALIGNED check.
    177 	* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Likewise.
    178 
    179 2018-06-21  Mark Wielaard  <mark (a] klomp.org>
    180 
    181 	* elf.h: Update from glibc.
    182 
    183 2018-04-19  Andreas Schwab  <schwab (a] suse.de>
    184 
    185 	* elf.h: Update from glibc.
    186 
    187 2018-02-16  Mark Wielaard  <mark (a] klomp.org>
    188 
    189 	* elf.h: Update from glibc.
    190 
    191 2018-02-09  Joshua Watt  <JPEWhacker (a] gmail.com>
    192 
    193 	* elf32_updatenull.c (updatenull_wrlock): Use FALLTHROUGH macro
    194 	instead of comment.
    195 	* elf_begin.c (read_unmmaped_file): Likewise.
    196 	(elf_begin): Likewise.
    197 	* elf_cntl.c (elf_cntl): Likewise.
    198 
    199 2017-10-04  Mark Wielaard  <mark (a] klomp.org>
    200 
    201 	* elf_begin.c (file_read_elf): Skip sanity checking e_shoff if scncnt
    202 	is zero, we won't use it then.
    203 
    204 2017-10-04  Mark Wielaard  <mark (a] klomp.org>
    205 
    206 	* libelfP.h: Add ELF_E_INVALID_ELF to error values enum.
    207 	* elf_error.c (ELF_E_INVALID_ELF_IDX): New define. Use it as value
    208 	for ELF_E_INVALID_ELF in msgidx.
    209 	* elf_getshdrstrndx.c (elf_getshdrstrndx): Distinquish between pread
    210 	failing and not having enough data.
    211 	* elf_begin.c (get_shnum): Likewise. Explicitly set libelf errno on
    212 	too large value.
    213 	(file_read_elf): Make sure to always set libelf errno when returning
    214 	NULL. Distinquish between i/o file and elf data errors.
    215 
    216 2017-08-18  Ulf Hermann  <ulf.hermann (a] qt.io>
    217 
    218 	* gelf_xlate.c: Use attribute_packed.
    219 
    220 2017-04-27  Ulf Hermann  <ulf.hermann (a] qt.io>
    221 
    222 	* libelfP.h: Use attribute_hidden.
    223 
    224 2017-04-27  Ulf Hermann  <ulf.hermann (a] qt.io>
    225 
    226 	* Makefile.am: Use fpic_CFLAGS and dso_LDFLAGS.
    227 
    228 2017-08-15  Mark Wielaard  <mark (a] klomp.org>
    229 
    230 	* elf.h: Update from glibc. Add new powerpc note descriptors.
    231 
    232 2017-07-19  Gustavo Romero <gromero (a] linux.vnet.ibm.com>
    233 
    234 	* elf.h: Add known type in notes segment descriptor for HTM SPRs.
    235 
    236 2017-02-17  Ulf hermann  <ulf.hermann (a] qt.io>
    237 
    238 	* Makefile.am: Add libelf_so_DEPS, which include libeu.a,
    239 	libelf_so_LIBS.
    240 	(libelf_so_LDLIBS): Add $(libelf_so_DEPS).
    241 	(libelf.so$(EXEEXT): Use $(libelf_so_LIBS), require libelf.map
    242 	from the right directory.
    243 
    244 2017-04-20  Ulf Hermann  <ulf.hermann (a] qt.io>
    245 
    246 	* libelfP.h: Don't include config.h.
    247 
    248 2017-04-20  Ulf Hermann  <ulf.hermann (a] qt.io>
    249 
    250 	* elf_begin.c: Use F_GETFD rather than F_GETFL.
    251 
    252 2017-04-20  Ulf Hermann  <ulf.hermann (a] qt.io>
    253 
    254 	* libelf.h: Define macros for various function attributes and use
    255 	them.
    256 
    257 2017-04-20  Ulf Hermann  <ulf.hermann (a] qt.io>
    258 
    259 	* elf_update.c: Set ELF_F_MMAPPED flag if we mmap from elf_update.
    260 
    261 2017-04-19  Mark Wielaard  <mark (a] klomp.org>
    262 
    263 	* elf_getarsym.c (elf_getarsym): Initialize n to zero.
    264 
    265 2017-03-27  Mark Wielaard  <mark (a] klomp.org>
    266 
    267 	* elf32_updatefile.c (updatemmap): Always update last_positition.
    268 	(updatefile): Likewise.
    269 
    270 2017-03-24  Mark Wielaard  <mark (a] klomp.org>
    271 
    272 	* elf_compress.c (__libelf_decompress): Check insane compression
    273 	ratios before trying to allocate output buffer.
    274 
    275 2016-10-11  Akihiko Odaki  <akihiko.odaki.4i (a] stu.hosei.ac.jp>
    276 	    Mark Wielaard  <mjw (a] redhat.com>
    277 
    278 	* gelf.h (gelf_newehdr): Change return type to void *.
    279 	(gelf_newphdr): Likewise.
    280 	* gelf_newehdr.c (gelf_newehdr): Likewise.
    281 	* gelf_newphdr.c (gelf_newphdr): Likewise.
    282 
    283 2016-10-21  Mark Wielaard  <mjw (a] redhat.com>
    284 
    285 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Sanity check
    286 	offset and size before trying to malloc and read data.
    287 
    288 2016-10-26  Mark Wielaard  <mjw (a] redhat.com>
    289 
    290 	* elf_begin.c (read_file): Always set maxsize when parent == NULL.
    291 
    292 2016-10-11  Akihiko Odaki  <akihiko.odaki.4i (a] stu.hosei.ac.jp>
    293 
    294 	* elf_getarsym.c (elf_getarsym): Open code rawmemchr when not
    295 	available.
    296 	* elf_strptr.c: Include stdbool.h.
    297 	(validate_str): New function.
    298 	(elf_strptr): Use validate_str instead of memrchr.
    299 
    300 2016-10-11  Akihiko Odaki  <akihiko.odaki.4i (a] stu.hosei.ac.jp>
    301 
    302 	* elf32_updatefile.c: Remove sys/param.h include.
    303 	* elf32_updatenull.c: Likewise. Add system.h include.
    304 	* elf_begin.c: Remove sys/param.h.
    305 	* elf_compress: Likewise. Add system.h include.
    306 	(MAX): Remove definition.
    307 
    308 2016-08-07  Mark Wielaard  <mjw (a] redhat.com>
    309 
    310 	* elf_compress.c (__libelf_reset_rawdata): Check scn->flags and
    311 	free rawdata_base when malloced. Set ELF_F_MALLOCED for scn->flags.
    312 	* elf_end.c (elf_end): Check scn->flags and free rawdata_base if
    313 	malloced.
    314 	* libelfP.h (struct Elf_Scn): Document flags ELF_F_MALLOCED usage.
    315 
    316 2016-07-06  Mark Wielaard  <mjw (a] redhat.com>
    317 
    318 	* elf-knowledge.h (SH_FLAGS_COMBINE): Removed.
    319 	(SH_FLAGS_IMPORTANT): Likewise.
    320 
    321 2016-07-06  Mark Wielaard  <mjw (a] redhat.com>
    322 
    323 	* elf32_updatenull.c (updatenull_wrlock): Ignore e_type when
    324 	updating phdrs.
    325 	* elf_getphdrnum.c (__elf_getphdrnum_chk_rdlock): Only do sanity
    326 	checking if phdrs haven't been read in yet.
    327 
    328 2016-06-24  John Ogness  <john.ogness (a] linutronix.de>
    329 
    330 	* elf32_updatenull.c (updatenull_wrlock): Find first section.
    331 	* elf_nextscn.c (elf_nextscn): When scn is NULL start from 0th
    332 	section.
    333 
    334 2016-06-28  Richard Henderson  <rth (a] redhat.com>
    335 
    336 	* elf.h: Update from glibc.  Add lots of new EM_* definitions.
    337 
    338 2016-04-14  Mark Wielaard  <mjw (a] redhat.com>
    339 
    340 	* elf_compress.c (__libelf_compress): Free out_buf if deflateInit
    341 	fails.
    342 
    343 2016-02-13  Mark Wielaard  <mjw (a] redhat.com>
    344 
    345 	* elf32_updatefile.c (updatemmap): Free scns when out of memory.
    346 
    347 2016-01-28  Mark Wielaard  <mjw (a] redhat.com>
    348 
    349 	* elf.h: Update from glibc. Add new i386 and x86_64 relocations.
    350 
    351 2016-02-12  Mark Wielaard  <mjw (a] redhat.com>
    352 
    353 	* elf.h: Update from glibc. Add NT_ARM_SYSTEM_CALL.
    354 
    355 2016-02-04  Mark Wielaard  <mjw (a] redhat.com>
    356 
    357 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Don't adjust align
    358 	for SHT_NOBITS sections.
    359 
    360 2016-01-22  Chih-Hung Hsieh <chh (a] google.com>
    361 
    362 	* elf_compress.c (__libelf_compress): Move nested function
    363 	'do_deflate_cleanup' to file scope to compile with clang.
    364 	* elf_strptr.c (elf_strptr): Move nested function 'get_zdata'
    365 	to file scope to compile with clang.
    366 
    367 2016-01-13  Mark Wielaard  <mjw (a] redhat.com>
    368 
    369 	* libelf.h: Check SHF_COMPRESSED is defined. If not define it and the
    370 	associated ELF compression types/defines.
    371 
    372 2015-11-26  Mark Wielaard  <mjw (a] redhat.com>
    373 
    374 	* elf_compress.c (__libelf_decompress_elf): New function, extracted
    375 	from...
    376 	(elf_compress): here. Check zdata_base use __libelf_decompress_elf.
    377 	* elf_strptr.c (elf_strptr): If SHF_COMPRESSED check, uncompress and
    378 	use zdata.
    379 	* libelfP.h (struct Elf_Scn): Add zdata_size and zdata_align.
    380 	(__libelf_decompress_elf): New internal function definition.
    381 
    382 2015-10-21  Mark Wielaard  <mjw (a] redhat.com>
    383 
    384 	* Makefile.am (libelf_a_SOURCES): Add elf_compress.c and
    385 	elf_compress_gnu.c.
    386 	* elf_compress.c: New file.
    387 	* elf_compress_gnu.c: Likewise.
    388 	* elf_begin.c (file_read_elf): Make a writable copy of the shdrs
    389 	for ELF_C_READ_MMAP.
    390 	* elf_end.c (elf_end): Free zdata_base.
    391 	* elf_error.c: Add ELF_E_ALREADY_COMPRESSED,
    392 	ELF_E_UNKNOWN_COMPRESSION_TYPE, ELF_E_COMPRESS_ERROR and
    393 	ELF_E_DECOMPRESS_ERROR.
    394 	* elf_data.c (__libelf_data_type): New internal function extracted
    395 	from convert_data.
    396 	(convert_data): Handle SHF_COMPRESSED.
    397 	* elf32_updatenull.c (updatenull_wrlock): Check sh_entsize against
    398 	uncompressed section data size if SHF_COMPRESSED.
    399 	* elf32_getshdr.c (load_shdr_wrlock): Adjust assert to account for
    400 	ELF_C_READ_MMAP.
    401 	* libelf.h: Define elf_compress and elf_compress_gnu.
    402 	* libelf.map (ELFUTILS_1.7): Add elf_compress and elf_compress_gnu.
    403 	* libelfP.h: Add ELF_E_ALREADY_COMPRESSED,
    404 	ELF_E_UNKNOWN_COMPRESSION_TYPE, ELF_E_COMPRESS_ERROR and
    405 	ELF_E_DECOMPRESS_ERROR. Define __libelf_data_type.
    406 	(__libelf_compress): New internal function definition.
    407 	(__libelf_decompress): Likewise.
    408 	(__libelf_reset_rawdata): Likewise.
    409 	(__libelf_data_type): Likewise.
    410 	(struct Elf_Scn): Add zdata_base.
    411 
    412 2015-11-19  Mark Wielaard  <mjw (a] redhat.com>
    413 
    414 	* Makefile.am (libelf_a_SOURCES): Add elf32_getchdr.c,
    415 	elf64_getchdr.c and gelf_getchdr.c.
    416 	(noinst_HEADERS): Add chdr_xlate.h.
    417 	* abstract.h: Define Chdr32 and Chdr64.
    418 	* chdr_xlate.h: New file.
    419 	* elf32_getchdr.c: New file.
    420 	* elf64_getchdr.c: New file.
    421 	* elf_error.c: Add ELF_E_NOT_COMPRESSED, ELF_E_INVALID_SECTION_TYPE
    422 	and ELF_E_INVALID_SECTION_FLAGS.
    423 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Set d_type to
    424 	ELF_T_CHDR for SHF_COMPRESSED sections.
    425 	* exttypes.h: Add Chdr32 and Chdr64.
    426 	* gelf.h (GElf_Chdr): New typedef.
    427 	(gelf_getchdr): New function definition.
    428 	* gelf_fsize.c (__libelf_type_sizes): Add ELF_T_CHDR.
    429 	* gelf_getchdr.c: New file.
    430 	* gelf_xlate.c (__elf_xfctstom): Add ELF_T_CHDR cvt_chdr.
    431 	* gelf_xlate.h: Add Chdr.
    432 	* libelf.h (Elf_Type): Add ELF_T_CHDR.
    433 	(elf32_getchdr): New function definition.
    434 	(elf64_getchdr): Likewise.
    435 	* libelf.map (ELFUTILS_1.7): New sections add elf32_getchdr,
    436 	elf64_getchdr and gelf_getchdr.
    437 	* libelfP.h: Add ELF_E_NOT_COMPRESSED, ELF_E_INVALID_SECTION_TYPE
    438 	and ELF_E_INVALID_SECTION_FLAGS.
    439 
    440 2015-10-16  Mark Wielaard  <mjw (a] redhat.com>
    441 
    442 	* Makefile.am (libelf_so_LDLIBS): Add -lz.
    443 
    444 2015-10-14  Mark Wielaard  <mjw (a] redhat.com>
    445 
    446 	* elf.h: Update from glibc. Add section compression constants and
    447 	structures.
    448 
    449 2015-10-20  Jose E. Marchesi  <jose.marchesi (a] oracle.com>
    450 
    451 	* elf_begin.c (get_shnum): Elf64_Shdr.sh_size is an Elf64_Xword.
    452 	Fix the size argument to pread_retry.
    453 
    454 2015-10-13  Chih-Hung Hsieh  <chh (a] google.com>
    455 
    456 	* elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Move nested
    457 	function 'fill_mmap' to file scope.
    458 	* elf_begin.c (elf_begin): Move nested function 'lock_dup_elf'
    459 	to file scope.
    460 
    461 2015-10-09  Josh Stone  <jistone (a] redhat.com>
    462 
    463 	* libelf.h: Replace loff_t with int64_t throughout.
    464 
    465 2015-10-05  Mark Wielaard  <mjw (a] redhat.com>
    466 
    467 	* elf_update.c (write_file): Only use posix_fallocate when using
    468 	mmap. Only report failure when errno is ENOSPC.
    469 
    470 2015-10-09  Josh Stone  <jistone (a] redhat.com>
    471 
    472 	* libelfP.h (struct Elf): Replace off64_t with off_t.
    473 	* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Likewise.
    474 
    475 2015-10-05  Chih-Hung Hsieh <chh (a] google.com>
    476 
    477 	* elf_getarsym.c (elf_getarsym): Do not use
    478 	union of variable length arrays.
    479 
    480 2015-10-05  Josh Stone  <jistone (a] redhat.com>
    481 
    482 	* Makefile.am (libelf.so): Add AM_V_CCLD and AM_V_at silencers.
    483 
    484 2015-09-24  Jose E. Marchesi  <jose.marchesi (a] oracle.com>
    485 
    486 	* Makefile.am (AM_CFLAGS): Use -fPIC instead of -fpic to avoid
    487 	relocation overflows in some platforms.
    488 
    489 2015-09-29  Mark Wielaard  <mjw (a] redhat.com>
    490 
    491 	* elf32_updatenull.c (default_ehdr): Set e_version when EV_NONE.
    492 	(updatenull_wrlock): Always set e_shentsize.
    493 
    494 2015-09-23  Mark Wielaard  <mjw (a] redhat.com>
    495 
    496 	* elf32_getehdr.c (getehdr_wrlock): Mark as internal_function.
    497 	* elf32_getshdr.c (getshdr_rdlock): Likewise.
    498 	(getshdr_wrlock): Likewise.
    499 	* elf_error.c (__libelf_seterrno): Likewise.
    500 	* elf_getphdrnum.c (__elf_getphdrnum_rdlock): Likewise.
    501 	(__elf_getphdrnum_chk_rdlock): Likewise.
    502 	* elf_getshdrnum.c (__elf_getphdrnum_rdlock): Likewise.
    503 	(__elf_getphdrnum_chk_rdlock): Likewise.
    504 	* elf_getshdrnum.c (__elf_getshdrnum_rdlock): Likewise.
    505 	* elf_readall.c (__libelf_readall): Likewise.
    506 	* gelf_getehdr.c (__gelf_getehdr_rdlock): Likewise.
    507 
    508 2015-09-22  Mark Wielaard  <mjw (a] redhat.com>
    509 
    510 	* *.c: Remove old-style function definitions.
    511 
    512 2015-06-22  Mark Wielaard  <mjw (a] redhat.com>
    513 
    514 	* dl-hash.h: Update from glibc.
    515 
    516 2015-06-18  Mark Wielaard  <mjw (a] redhat.com>
    517 
    518 	* elf32_updatefile.c (updatefile): Always free shdr_data and scns
    519 	when allocated on failure paths.
    520 
    521 2015-06-18  Mark Wielaard  <mjw (a] redhat.com>
    522 
    523 	* nlist.c (nlist): Check symscn shdr exists before use.
    524 
    525 2015-06-16  Mark Wielaard  <mjw (a] redhat.com>
    526 
    527 	* elf_update.c (write_file): Always also use ftruncate before
    528 	posix_fallocate to make sure file has the right size.
    529 
    530 2015-06-04  Mark Wielaard  <mjw (a] redhat.com>
    531 
    532 	* elf_getdata.c (__libelf_type_aligns): Add entries for ELF_T_EHDR,
    533 	ELF_T_OFF, ELF_T_PHDR, ELF_T_SHDR, ELF_T_SWORD, ELF_T_XWORD,
    534 	ELF_T_SXWORD, ELF_T_GNUHASH, ELF_T_AUXV.
    535 	* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Check alignment
    536 	of rawdata against requested type.
    537 
    538 2015-06-02  Mark Wielaard  <mjw (a] redhat.com>
    539 
    540 	* elf_getdata.c (convert_data): Make sure source data is properly
    541 	aligned for type before calling actual conversion function.
    542 
    543 2015-06-04  Mark Wielaard  <mjw (a] redhat.com>
    544 
    545 	* elf_begin.c (get_shnum): Check alignment of Shdr, not Ehdr before
    546 	direct access.
    547 
    548 2015-06-02  Mark Wielaard  <mjw (a] redhat.com>
    549 
    550 	* elf_begin.c (file_read_elf): Split checks for ehdr and shdr
    551 	alignment, drop phdr alignment check.
    552 
    553 2015-05-31  Mark Wielaard  <mjw (a] redhat.com>
    554 
    555 	* elf32_getshdr.c (load_shdr_wrlock): Allocate shdrs with malloc,
    556 	not alloca and free after conversion when a copy needs to be made.
    557 
    558 2015-05-31  Mark Wielaard  <mjw (a] redhat.com>
    559 
    560 	* elf32_getphdr.c (getphdr_wrlock): Allocate phdrs with malloc, not
    561 	alloca and free after conversion when a copy needs to be made.
    562 
    563 2015-05-31  Mark Wielaard  <mjw (a] redhat.com>
    564 
    565 	* elf_getarsym.c (elf_getarsym): Allocate temporary file_date with
    566 	malloc, not alloca also in !ALLOW_UNALIGNED case.
    567 
    568 2015-05-30  Mark Wielaard  <mjw (a] redhat.com>
    569 
    570 	* gelf_xlate.c (elf_cvt_Byte): Only call memmove with non-zero size.
    571 
    572 2015-05-30  Mark Wielaard  <mjw (a] redhat.com>
    573 
    574 	* elf32_updatefile.c (updatemmap): Only call mempcpy and update
    575 	last_position when d_size is non-zero.
    576 
    577 2015-05-17  Mark Wielaard  <mjw (a] redhat.com>
    578 
    579 	* elf32_updatefile.c (updatefile): Allocate shdr_data and scns
    580 	with malloc, not alloca. Free after writing section headers.
    581 
    582 2015-05-16  Mark Wielaard  <mjw (a] redhat.com>
    583 
    584 	* elf32_updatefile.c (updatemmap): Allocate temporary shdr storage
    585 	with malloc, not alloca. Free after writing section header.
    586 
    587 2015-05-16  Mark Wielaard  <mjw (a] redhat.com>
    588 
    589 	* elf_getarsym.c (elf_getarsym): Allocate temporary file_date with
    590 	malloc, not alloca. Call free after out.
    591 
    592 2015-05-14  Mark Wielaard  <mjw (a] redhat.com>
    593 
    594 	* elf_update.c (write_file): Use posix_fallocate instead of
    595 	ftruncate to extend file if necessary.
    596 
    597 2015-05-13  Mark Wielaard  <mjw (a] redhat.com>
    598 
    599 	* elf32_updatenull.c (default_ehdr): If e_phnum is zero then set
    600 	e_phoff also to zero.
    601 
    602 2015-05-12  Mark Wielaard  <mjw (a] redhat.com>
    603 
    604 	* elf32_updatenull.c (updatenull_wrlock): Check that sh_addralign
    605 	is a powerof2.
    606 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Clamp large d_aligns
    607 	to the elf image offset.
    608 
    609 2015-05-12  Mark Wielaard  <mjw (a] redhat.com>
    610 
    611 	* elf32_newphdr.c (newphdr): Call __libelf_seterrno with
    612 	ELF_E_INVALID_INDEX before failing. Check whether section zero shdr
    613 	actually exists if we need to put extended phnum in section zero.
    614 
    615 2015-05-08  Mark Wielaard  <mjw (a] redhat.com>
    616 
    617 	* nlist.c (nlist): Call gelf_fsize with EV_CURRENT.
    618 
    619 2015-01-03  Mark Wielaard  <mjw (a] redhat.com>
    620 
    621 	* version_xlate.h (elf_cvt_Verdef): Use memmove to copy src to dest.
    622 	(elf_cvt_Verneed): Likewise.
    623 
    624 2015-03-28  Mark Wielaard  <mjw (a] redhat.com>
    625 
    626 	* elf.h: Update from glibc.
    627 
    628 2015-03-23  Mark Wielaard  <mjw (a] redhat.com>
    629 
    630 	* elf32_updatenull.c (updatenull_wrlock): Don't extend size with
    631 	SHT_NOBITS sh_offset.
    632 
    633 2015-02-18  Mark Wielaard  <mjw (a] redhat.com>
    634 
    635 	* libelfP.h (__libelf_set_data_list_rdlock): Make internal_function.
    636 
    637 2015-02-07  Jan Kratochvil  <jan.kratochvil (a] redhat.com>
    638 
    639 	* elf32_updatenull.c (__elfw2(LIBELFBITS,updatenull_wrlock)): Consider
    640 	sh_addralign 0 as 1.
    641 
    642 2015-01-22  Mark Wielaard  <mjw (a] redhat.com>
    643 
    644 	* elf_strptr (elf_strptr): Make sure returned string is NUL
    645 	terminated.
    646 
    647 2015-01-21  Mark Wielaard  <mjw (a] redhat.com>
    648 
    649 	* elf_strptr.c (elf_strptr): Check data_list_rear == NULL instead
    650 	of rawdata_base != NULL before using rawdata directly.
    651 
    652 2015-01-20  Mark Wielaard  <mjw (a] redhat.com>
    653 
    654 	* libelfP.h (__elf_strptr_internal): New function declaration.
    655 	* elf_getdata.c (__libelf_set_data_list_rdlock): New internal
    656 	function extracted from...
    657 	(__elf_getdata_rdlock): ... here.
    658 	* elf_newdata.c (elf_newdata): Check scn->rawdata_base and update
    659 	datalist if necessary.
    660 
    661 2015-01-20  Mark Wielaard  <mjw (a] redhat.com>
    662 
    663 	* elf_strptr.c (elf_strptr): Call __elf[32|64]_getshdr_rdlock if
    664 	necessary.
    665 
    666 2014-12-30  Mark Wielaard  <mjw (a] redhat.com>
    667 
    668 	* elf_getphdrnum.c (__elf_getphdrnum_chk_rdlock): New function.
    669 	(elf_getphdrnum): Call __elf_getphdrnum_chk_rdlock.
    670 	* gelf_getphdr (gelf_getphdr): Call __elf_getphdrnum_chk_rdlock
    671 	and always check ndx against phnum.
    672 	* libelfP.h (__elf_getphdrnum_chk_rdlock): New internal function.
    673 
    674 2014-12-25  Mark Wielaard  <mjw (a] redhat.com>
    675 
    676 	* elf_begin.c (__libelf_next_arhdr_wrlock): ar_size cannot be
    677 	negative. Include start_offset in maxsize.
    678 
    679 2014-12-28  Alexander Cherepanov  <cherepan (a] mccme.ru>
    680 
    681 	* elf_begin.c (read_long_names): Don't miss '/' right after
    682 	another '/'. Fixes a dir traversal vuln in ar extraction.
    683 
    684 2014-12-18  Ulrich Drepper  <drepper (a] gmail.com>
    685 
    686 	* Makefile.am: Suppress output of textrel_check command.
    687 
    688 2014-12-16  Mark Wielaard  <mjw (a] redhat.com>
    689 
    690 	* elf_begin.c (read_long_names): Make sure long_names len fits
    691 	in mapped ELF file.
    692 
    693 2014-12-15  Mark Wielaard  <mjw (a] redhat.com>
    694 
    695 	* elf_getarsym.c (elf_getarsym): Check index_size doesn't overflow.
    696 
    697 2014-12-15  Mark Wielaard  <mjw (a] redhat.com>
    698 
    699 	* elf_begin.c (read_long_names): Clear any garbage left in the
    700 	name table.
    701 
    702 2014-12-11  Mark Wielaard  <mjw (a] redhat.com>
    703 
    704 	* elf_begin.c (file_read_elf): Correct ELF64 section offset check.
    705 
    706 2014-12-11  Mark Wielaard  <mjw (a] redhat.com>
    707 
    708 	* elf_begin.c (read_long_names): Check for offset overflow.
    709 	(__libelf_next_arhdr_wrlock): Likewise. Sanity check the ar_size.
    710 	Don't allow it to go beyond end of file.
    711 
    712 2014-12-09  Mark Wielaard  <mjw (a] redhat.com>
    713 
    714 	* elf_getarsym.c (elf_getarsym): Make sure n * w doesn't overflow.
    715 
    716 2014-11-27  Mark Wielaard  <mjw (a] redhat.com>
    717 
    718 	* Makefile.am (libelf.so): Use textrel_check.
    719 
    720 2014-11-23  Mark Wielaard  <mjw (a] redhat.com>
    721 
    722 	* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Change signed
    723 	overflow check to unsigned.
    724 
    725 2014-11-23  Mark Wielaard  <mjw (a] redhat.com>
    726 
    727 	* note_xlate.h (elf_cvt_note): Copy over any leftover data if
    728 	src != dest. The data is probably part of truncated name/desc.
    729 
    730 2014-11-22  Mark Wielaard  <mjw (a] redhat.com>
    731 
    732 	* elf_getphdrnum.c (elf_getphdrnum): Sanity check the
    733 	__elf_getphdrnum_rdlock result.
    734 
    735 2014-11-18  Mark Wielaard  <mjw (a] redhat.com>
    736 
    737 	* version_xlate.h (elf_cvt_Verdef): Check for overflow.
    738 	(elf_cvt_Verneed): Likewise.
    739 
    740 2014-11-17  Mark Wielaard  <mjw (a] redhat.com>
    741 
    742 	* elf-knowledge.h (SECTION_STRIP_P): Check name is not NULL.
    743 
    744 2014-11-16  Mark Wielaard  <mjw (a] redhat.com>
    745 
    746 	* elf_getshdrstrndx.c: Check there are section headers before
    747 	handling SHN_XINDEX.
    748 
    749 2014-11-16  Mark Wielaard  <mjw (a] redhat.com>
    750 
    751 	* elf32_getphdr.c (getphdr_wrlock): Check e_phoff isn't zero.
    752 	Check for too many pheaders.
    753 	* elf_getphdrnum.c (__elf_getphdrnum_rdlock): Check section zero
    754 	actually exists before handling PN_XNUM.
    755 
    756 2014-11-16  Mark Wielaard  <mjw (a] redhat.com>
    757 
    758 	* gelf_getnote.c (gelf_getnote): Check padding overflow.
    759 
    760 2014-11-16  Mark Wielaard  <mjw (a] redhat.com>
    761 
    762 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Declare offset, size
    763 	and align as Elf64_Off and Elf64_Xword not size_t.
    764 
    765 2014-11-14  Mark Wielaard  <mjw (a] redhat.com>
    766 
    767 	* gelf_getnote.c (gelf_getnote): Check offset overflow.
    768 
    769 2014-11-13  Mark Wielaard  <mjw (a] redhat.com>
    770 
    771 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Fix unsigned overflow
    772 	check.
    773 
    774 2014-11-08  Mark Wielaard  <mjw (a] redhat.com>
    775 
    776 	* elf_begin.c (__libelf_next_arhdr_wrlock): Use mempcpy not __mempcpy.
    777 
    778 2014-11-07  Mark Wielaard  <mjw (a] redhat.com>
    779 
    780 	* elf_begin.c (file_read_elf): Correct sh_size check.
    781 	* elf_getdata.c (__libelf_set_rawdata_wrlock): Check for unsigned
    782 	overflow.
    783 
    784 2014-09-10  Petr Machata  <pmachata (a] redhat.com>
    785 
    786 	* elf_begin (read_unmmaped_file): Call __libelf_seterrno if the
    787 	file is unreadable.
    788 
    789 2014-07-07  Mark Wielaard  <mjw (a] redhat.com>
    790 
    791 	* elf.h: Update from glibc.
    792 
    793 2014-04-13  Mark Wielaard  <mjw (a] redhat.com>
    794 
    795 	* Makefile.am: Remove !MUDFLAP conditions.
    796 	* elf_begin.c (read_file): Don't clear use_mmap when _MUDFLAP is
    797 	defined.
    798 	* elf_update.c (write_file): Remove _MUDFLAP condition.
    799 
    800 2014-01-17  Jakub Jelinek  <jakub (a] redhat.com>
    801 	    Roland McGrath  <roland (a] redhat.com>
    802 
    803 	* libelfP.h (INVALID_NDX): Define.
    804 	* gelf_getdyn.c (gelf_getdyn): Use it.  Remove ndx < 0 test if any.
    805 	* gelf_getlib.c (gelf_getlib): Likewise.
    806 	* gelf_getmove.c (gelf_getmove): Likewise.
    807 	* gelf_getrel.c (gelf_getrel): Likewise.
    808 	* gelf_getrela.c (gelf_getrela): Likewise.
    809 	* gelf_getsym.c (gelf_getsym): Likewise.
    810 	* gelf_getsyminfo.c (gelf_getsyminfo): Likewise.
    811 	* gelf_getsymshndx.c (gelf_getsymshndx): Likewise.
    812 	* gelf_getversym.c (gelf_getversym): Likewise.
    813 	* gelf_update_dyn.c (gelf_update_dyn): Likewise.
    814 	* gelf_update_lib.c (gelf_update_lib): Likewise.
    815 	* gelf_update_move.c (gelf_update_move): Likewise.
    816 	* gelf_update_rel.c (gelf_update_rel): Likewise.
    817 	* gelf_update_rela.c (gelf_update_rela): Likewise.
    818 	* gelf_update_sym.c (gelf_update_sym): Likewise.
    819 	* gelf_update_syminfo.c (gelf_update_syminfo): Likewise.
    820 	* gelf_update_symshndx.c (gelf_update_symshndx): Likewise.
    821 	* gelf_update_versym.c (gelf_update_versym): Likewise.
    822 
    823 2014-01-17  Jakub Jelinek  <jakub (a] redhat.com>
    824 
    825 	* elf32_getphdr.c (elfw2(LIBELFBITS,getphdr)): Check if program header
    826 	table fits into object's bounds.
    827 	* elf_getshdrstrndx.c (elf_getshstrndx): Add elf->start_offset to
    828 	elf->map_address.  Check if first section header fits into object's
    829 	bounds.
    830 	* elf32_getshdr.c (elfw2(LIBELFBITS,getshdr)):
    831 	Check if section header table fits into object's bounds.
    832 	* elf_begin.c (get_shnum): Ensure section headers fits into
    833 	object's bounds.
    834 	(file_read_elf): Make sure scncnt is small enough to allocate both
    835 	ElfXX_Shdr and Elf_Scn array.  Make sure section and program header
    836 	tables fit into object's bounds.  Avoid memory leak on failure.
    837 	* elf_newscn.c (elf_newscn): Check for overflow.
    838 	* elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Likewise.
    839 	(__elfw2(LIBELFBITS,updatefile)): Likewise.
    840 	* elf32_newphdr.c (elfw2(LIBELFBITS,newphdr)): Likewise.
    841 	* elf_getarsym.c (elf_getarsym): Likewise.
    842 
    843 2013-11-08  Mark Wielaard  <mjw (a] redhat.com>
    844 
    845 	* elf32_updatefile.c (elfXX_updatemmap): Only memcpy ehdr when not
    846 	already directly mmapped.
    847 
    848 2013-11-05  Mark Wielaard  <mjw (a] redhat.com>
    849 
    850 	* elf32_updatefile.c (elfXX_updatefile): Copy all section headers
    851 	if elf->flags dirty.
    852 
    853 2013-11-01  Michael Forney  <mforney (a] mforney.org>
    854 
    855 	* Makefile.am: Use READELF.
    856 
    857 2013-10-01  Petr Machata  <pmachata (a] redhat.com>
    858 
    859 	* elf.h: Update from glibc.
    860 
    861 2013-06-17  Petr Machata  <pmachata (a] redhat.com>
    862 
    863 	* elf.h: Update from glibc.
    864 
    865 2013-08-28  Namhyung Kim  <namhyung (a] gmail.com>
    866 
    867 	* gelf.h (gelf_fsize): Fix typo in comment.
    868 
    869 2013-08-28  Mark Wielaard  <mjw (a] redhat.com>
    870 
    871 	* gelf_getauxv.c (gelf_getauxv): Add missing whitespace.
    872 
    873 2013-08-27  Mark Wielaard  <mjw (a] redhat.com>
    874 
    875 	* gelf_getauxv.c (gelf_getauxv): Remove unnecessary casts to char *.
    876 
    877 2013-08-25  Kurt Roeckx  <kurt (a] roeckx.be>
    878 
    879 	* gelf_getauxv.c (gelf_getauxv): Use memcpy instead of pointer
    880 	dereference to avoid alignment problems.
    881 
    882 2013-01-07  Roland McGrath  <roland (a] hack.frob.com>
    883 
    884 	* elf_getarsym.c (elf_getarsym): Copy FILE_DATA into stack space if it
    885 	would be unaligned and !ALLOW_UNALIGNED.
    886 
    887 	* elf_getarsym.c (read_number_entries): Use memcpy instead of pointer
    888 	dereference so as not to assume the field is naturally aligned.
    889 
    890 2012-09-17  Petr Machata  <pmachata (a] redhat.com>
    891 
    892 	* elf.h: Update from glibc.
    893 
    894 2012-08-16  Roland McGrath  <roland (a] hack.frob.com>
    895 
    896 	* elf.h: Update from glibc.
    897 
    898 2012-08-14  Mark Wielaard  <mjw (a] redhat.com>
    899 
    900 	* elf32_checksum.c (ebl_debugscn_p): Removed unused define and
    901 	confusing outdated comment.
    902 
    903 2012-08-01  Petr Machata  <pmachata (a] redhat.com>
    904 
    905 	* elf_getarsym (read_number_entries): New function.
    906 	(elf_getarsym): Handle 64-bit symbol table, stored in special
    907 	entry named "/SYM64/".
    908 	* elf_begin.c (__libelf_next_arhdr_wrlock): Don't reject archive
    909 	because it contains 64-bit symbol table.
    910 
    911 2012-07-19  Mark Wielaard  <mjw (a] redhat.com>
    912 
    913 	* elf32_getshdr.c (load_shdr_wrlock): Add elf->flags & ELF_F_MALLOCED
    914 	to asserts.
    915 
    916 2012-07-17  Petr Machata  <pmachata (a] redhat.com>
    917 
    918 	* elf32_xlatetom.c (elfw2(LIBELFBITS, xlatetom)): Do not check for
    919 	integer number of records in case of ELF_T_NHDR.
    920 
    921 2012-04-02  Mark Wielaard  <mjw (a] redhat.com>
    922 
    923 	* elf32_offscn.c: Do not match SHT_NOBITS sections at OFFSET unless
    924 	there are no nonempty sections at that offset.
    925 
    926 2012-03-21  Roland McGrath  <roland (a] hack.frob.com>
    927 
    928 	* elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check.
    929 
    930 2011-02-26  Mark Wielaard  <mjw (a] redhat.com>
    931 
    932 	* elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini.
    933 
    934 2011-01-05  Jan Kratochvil  <jan.kratochvil (a] redhat.com>
    935 
    936 	* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Fix off64_t overflow
    937 	when MAXIMUM_SIZE == ~0.
    938 
    939 2010-08-18  Roland McGrath  <roland (a] redhat.com>
    940 
    941 	* gelf_fsize.c (__libelf_type_sizes): Add entries for ELF_T_LIB
    942 	and ELF_T_GNUHASH.
    943 	Reported by Mark Hatle <mark.hatle (a] windriver.com>.
    944 
    945 	* exttypes.h: Add cases for ElfNN_Lib.
    946 	Reported by Mark Hatle <mark.hatle (a] windriver.com>.
    947 
    948 2010-06-14  Ulrich Drepper  <drepper (a] redhat.com>
    949 
    950 	* gelf_update_shdr.c: Implicitly set ELF_F_DIRTY bit.
    951 	* gelf_update_phdr.c: Likewise.
    952 	* gelf_update_ehdr.c: Likewise.
    953 
    954 2010-04-14  Roland McGrath  <roland (a] redhat.com>
    955 
    956 	* elf32_getphdr.c: Check for e_phoff/size outside the file bounds.
    957 	* elf_begin.c (file_read_elf): Don't set .phdr here.
    958 
    959 2010-04-13  Roland McGrath  <roland (a] redhat.com>
    960 
    961 	* elf.h: Update from glibc.
    962 
    963 2010-04-06  Roland McGrath  <roland (a] redhat.com>
    964 
    965 	* elf_error.c (ELF_E_FD_MISMATCH_IDX): Avoid nonobvious abbreviation
    966 	in error message.
    967 
    968 2010-04-01  Petr Machata  <pmachata (a] redhat.com>
    969 
    970 	* elf_getdata.c (__elf_getdata_rdlock): Initialize data.s for data
    971 	that do not need a conversion.
    972 
    973 2010-03-11  Roland McGrath  <roland (a] redhat.com>
    974 
    975 	* elf.h: Update from glibc.
    976 
    977 2010-03-04  Ulrich Drepper  <drepper (a] redhat.com>
    978 
    979 	* elf.h: Update from glibc.
    980 
    981 2010-02-17  Roland McGrath  <roland (a] redhat.com>
    982 
    983 	* elf_begin.c (file_read_elf): Leave section rawdata_base and
    984 	data_base pointers null when [sh_offset,sh_size) points outside
    985 	the mapped file.
    986 
    987 2010-02-15  Roland McGrath  <roland (a] redhat.com>
    988 
    989 	* Makefile.am: Use config/eu.am for common stuff.
    990 
    991 2010-01-07  Roland McGrath  <roland (a] redhat.com>
    992 
    993 	* elf32_getphdr.c: Use __elf_getphdrnum_rdlock.
    994 	* gelf_getphdr.c: Likewise.
    995 	* gelf_update_phdr.c: Likewise.
    996 	* elf32_updatefile.c (__elf32_updatemmap, __elf32_updatefile): Likewise.
    997 	* elf32_updatenull.c (__elf32_updatenull_wrlock): Likewise.
    998 	* elf32_newphdr.c: Clear section 0's sh_info when resetting e_phnum.
    999 	If COUNT is too large, use store PN_XNUM instead and set sh_info.
   1000 	* elf_begin.c (file_read_elf): Always allocate space we can use later
   1001 	for section 0 if doing RDWR.
   1002 
   1003 	* elf_getphdrnum.c: New file.
   1004 	* Makefile.am (libelf_a_SOURCES): Add it.
   1005 	* libelf.h: Declare elf_getphdrnum.
   1006 	* libelfP.h: Declare __elf_getphdrnum_rdlock.
   1007 	* libelf.map (ELFUTILS_1.6): New set, add elf_getphdrnum.
   1008 
   1009 	* elf.h: Update from glibc.
   1010 
   1011 2009-10-23  Lubomir Rintel  <lkundrak (a] v3.sk>
   1012 
   1013 	* elf32_updatefile.c (fill_mmap): When starting past shdr_end, start
   1014 	filling from section start, not shdr_end.
   1015 
   1016 2009-11-10  Roland McGrath  <roland (a] redhat.com>
   1017 
   1018 	* elf_readall.c (__libelf_readall): Fetch file size if not yet known.
   1019 
   1020 2009-11-06  Mark Wielaard  <mjw (a] redhat.com>
   1021 
   1022 	* elf_next.c (elf_next): Mark the archive header as unusable when
   1023 	there is no next ar element.
   1024 
   1025 2009-08-12  Mark Wielaard  <mjw (a] redhat.com>
   1026 
   1027 	* Makefile.am (libelf.so): Use -Wl,-z,defs not -defs.
   1028 
   1029 2009-07-26  Ulrich Drepper  <drepper (a] redhat.com>
   1030 
   1031 	* elf.h: Update from glibc.
   1032 
   1033 2009-07-21  Ulrich Drepper  <drepper (a] redhat.com>
   1034 
   1035 	* elf32_updatefile.c (__elfXX_updatemmap): Fix handling of gaps between
   1036 	sections.  Patch by Lubomir Rintel <lkundrak (a] v3.sk>.
   1037 
   1038 2009-07-08  Roland McGrath  <roland (a] redhat.com>
   1039 
   1040 	* libelfP.h (struct Elf): Remove unused ar.has_index field.
   1041 	Reorder various members for optimal packing.
   1042 
   1043 2009-07-08  Ulrich Drepper  <drepper (a] redhat.com>
   1044 
   1045 	* elf.h: Update from glibc.
   1046 
   1047 2009-06-13  Ulrich Drepper  <drepper (a] redhat.com>
   1048 
   1049 	* Makefile.am (libelf_a_SOURCES): Replace elf_getshnum.c and
   1050 	elf_getshstrndx.c with elf_getshdrnum.c and elf_getshdrstrndx.c.
   1051 	* elf_getshnum.c: Renamed to...
   1052 	* elf_getshdrnum.c: ...this.  Rename function and add old name as
   1053 	alias.  Likewise for internal functions with derived names.
   1054 	* elf_getshstrndx.c: Renamed to...
   1055 	* elf_getshdrstrndx.c: ...this.  Rename function and add old name as
   1056 	alias.  Likewise for internal functions with derived names.
   1057 	* libelf.h: Add prototypes for new names.  Make old names as
   1058 	deprecated.
   1059 	* libelfP.h: Rename internal function prototypes.
   1060 	* libelf.map: Export for names.
   1061 	* elf32_checksum.c: Don't use deprecated functions.
   1062 	* elf32_getshdr.c: Likewise.
   1063 
   1064 2009-06-01  Ulrich Drepper  <drepper (a] redhat.com>
   1065 
   1066 	* elf.h: Update from glibc.
   1067 
   1068 2009-04-14  Roland McGrath  <roland (a] redhat.com>
   1069 
   1070 	* elf.h: Update from glibc.
   1071 
   1072 2009-04-01  Roland McGrath  <roland (a] redhat.com>
   1073 
   1074 	* elf.h: Update from glibc.
   1075 
   1076 2009-02-10  Ulrich Drepper  <drepper (a] redhat.com>
   1077 
   1078 	* elf32_updatefile.c (updatefile): For the zeroth section we still
   1079 	have to copy the section header.
   1080 
   1081 2009-02-01  Ulrich Drepper  <drepper (a] redhat.com>
   1082 
   1083 	* elf_strptr.c: Add comment re possible problem.
   1084 
   1085 2009-01-26  Ulrich Drepper  <drepper (a] redhat.com>
   1086 
   1087 	* elf32_updatenull.c (updatenull_wrlock): Fix comment of
   1088 	ELF_F_LAYOUT behaviour re section header table.
   1089 
   1090 2009-01-22  Ulrich Drepper  <drepper (a] redhat.com>
   1091 
   1092 	* elf32_updatefile.c (__elfXX_updatemmap): Fill the gap between
   1093 	sections even if only the section at the start of the gap has been
   1094 	changed.
   1095 	(__elfXX_updatefile): Likewise.
   1096 
   1097 2009-01-21  Ulrich Drepper  <drepper (a] redhat.com>
   1098 
   1099 	* elf32_updatefile.c (__elfXX_updatemmap): Skip most of the loop to
   1100 	handle sections for NOBITS sections.
   1101 	(elfXX_updatefile): Likewise.
   1102 
   1103 	* elf32_updatefile.c (__elfXX_updatemmap): When skipping non-NOBITS
   1104 	sections we haven't loaded, update last_position based on scn_start,
   1105 	not based on old value.  Don't run the loop for the dummy section 0.
   1106 	(elfXX_updatefile): Don't run the loop for the dummy section 0.
   1107 
   1108 2009-01-10  Ulrich Drepper  <drepper (a] redhat.com>
   1109 
   1110 	* libelfP.h (_): We only have one translation domain, elfutils.
   1111 
   1112 	* Makefile.am: Use USE_LOCKS instead of USE_TLS.
   1113 	* elf_error.c: Always use __thread.  Remove all !USE_TLS code.
   1114 
   1115 2009-01-04  Roland McGrath  <roland (a] redhat.com>
   1116 
   1117 	* note_xlate.h (elf_cvt_note): Don't examine a size too small to
   1118 	container a note header.
   1119 
   1120 2008-12-11  Roland McGrath  <roland (a] redhat.com>
   1121 
   1122 	* elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Handle
   1123 	placement offset going backwards, for out-of-order or overlapping
   1124 	(bogus) sh_offset layouts.  It's a dumb use, but should not crash.
   1125 	(__elfw2(LIBELFBITS,updatefile)): Likewise.
   1126 	Fixes RHBZ#476136.
   1127 
   1128 	* libelf.h (Elf_Data): Whitespace fix.
   1129 
   1130 2008-12-10  Roland McGrath  <roland (a] redhat.com>
   1131 
   1132 	* elf_getarhdr.c (elf_getarhdr): Fix missing rename in last change.
   1133 
   1134 2008-10-22  Petr Machata  <pmachata (a] redhat.com>
   1135 
   1136 	* elf_rawfile.c (elf_rawfile): Lock around elf-> references.
   1137 
   1138 2008-10-21  Petr Machata  <pmachata (a] redhat.com>
   1139 
   1140 	* libelfP.h: Rename getehdr_rdlock to getehdr_wrlock.
   1141 	* elf32_getehdr.c (getehdr_rdlock): Move the code to new function
   1142 	getehdr_impl and make it a wrapper.  Rename to getehdr_wrlock.
   1143 	(getehdr_impl): Guard elf->class init with wrlock.
   1144 	(getehdr): Also make it a wrapper of getehdr_impl.
   1145 	* elf32_updatenull.c (updatenull_wrlock): Call getehdr_wrlock.
   1146 
   1147 2008-10-20  Petr Machata  <pmachata (a] redhat.com>
   1148 
   1149 	* elf_getdata_rawchunk.c (elf_getdata_rawchunk): Lock around the
   1150 	code that reads mutable elf state.  Relock to write lock to chain
   1151 	the new chunk on the elf rawchunks list.
   1152 
   1153 2008-10-20  Petr Machata  <pmachata (a] redhat.com>
   1154 
   1155 	* elf32_checksum.c (checksum): Place a lock around the code that
   1156 	processes data.  Make it wrlock if the code needs to xlate the
   1157 	data before processing.
   1158 
   1159 2008-10-16  Petr Machata  <pmachata (a] redhat.com>
   1160 
   1161 	* elf_begin.c
   1162 	(__libelf_next_arhdr): Rename to __libelf_next_arhdr_wrlock.
   1163 	(dup_elf): Adjust the call.
   1164 	(elf_begin): New local function lock_dup_elf.  Relocks the elf if
   1165 	necessary before calling dup.  Call this instead of dup_elf.
   1166 	* elf_getarhdr.c
   1167 	(elf_getarhdr): Lock before calling __libelf_next_arhdr_wrlock.
   1168 	* elf_next.c (elf_next): Likewise.
   1169 	* elf_rand.c (elf_rand): Likewise.
   1170 
   1171 2008-10-14  Petr Machata  <pmachata (a] redhat.com>
   1172 
   1173 	* elf_getdata.c (__elf_getdata_rdlock): Lock before converting.
   1174 
   1175 2008-11-26  Roland McGrath  <roland (a] redhat.com>
   1176 
   1177 	* elf.h: Update from glibc.
   1178 
   1179 2008-10-06  Roland McGrath  <roland (a] redhat.com>
   1180 
   1181 	* elf_getarhdr.c (elf_getarhdr): Return NULL when passed NULL.
   1182 
   1183 2008-08-27  Roland McGrath  <roland (a] redhat.com>
   1184 
   1185 	* elf_begin.c (get_shnum): Avoid misaligned reads for matching endian.
   1186 
   1187 	* libelfP.h [!ALLOW_UNALIGNED] (__libelf_type_align): Fix CLASS index.
   1188 
   1189 2008-08-25  Roland McGrath  <roland (a] redhat.com>
   1190 
   1191 	* Makefile.am (libelf_so_LDLIBS): New variable.
   1192 	(libelf.so): Use it in the link.
   1193 
   1194 2008-08-21  Petr Machata  <pmachata (a] redhat.com>
   1195 
   1196 	* elf_getdata.c, libelfP.h
   1197 	(__elf_getdata_internal): Rename to __elf_getdata_rdlock.
   1198 	(__libelf_set_rawdata_wrlock): New function.
   1199 	(__libelf_set_rawdata): Make it a wrapper that calls *_wrlock.
   1200 	* elf32_updatenull.c, libelfP.h
   1201 	(__elfNN_updatenull): Rename to __elfNN_updatenull_wrlock.
   1202 
   1203 2008-08-21  Petr Machata  <pmachata (a] redhat.com>
   1204 
   1205 	* elf32_getphdr.c, libelfP.h
   1206 	(__elfNN_getphdr_internal): Drop.  Move __elfNN_getphdr_internal
   1207 	code to __elfNN_getphdr_wrlock.
   1208 	(__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): New functions.
   1209 	(__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): Make these
   1210 	wrappers of getphdr_impl.
   1211 
   1212 2008-08-21  Petr Machata  <pmachata (a] redhat.com>
   1213 
   1214 	* elf32_getehdr.c, libelfP.h
   1215 	(__elfNN_getehdr_internal): Rename to __elfNN_getehdr_rdlock.
   1216 	* gelf_getehdr, libelfP.h:
   1217 	(__gelf_getehdr_internal): Rename to __gelf_getehdr_rdlock.
   1218 
   1219 2008-08-21  Petr Machata  <pmachata (a] redhat.com>
   1220 
   1221 	* elf32_getshdr.c
   1222 	(__elfNN_getshdr_internal): Drop.
   1223 	(load_shdr_wrlock, scn_valid): New functions, contain bits of
   1224 	behaviour from __elfNN_getshdr_internal.
   1225 	(__elfNN_getshdr_rdlock, __elfNN_getshdr_wrlock): Replacements for
   1226 	dropped _internal functions above.
   1227 	* elf_getshnum.c
   1228 	(__elf_getshnum_internal): Rename to __elf_getshnum_rdlock.
   1229 
   1230 2008-08-04  Petr Machata  <pmachata (a] redhat.com>
   1231 
   1232 	* libelfP.h (RWLOCK_RDLOCK, RWLOCK_WRLOCK, RWLOCK_UNLOCK): New macros.
   1233 
   1234 2008-07-28  Roland McGrath  <roland (a] redhat.com>
   1235 
   1236 	* elf.h: Update from glibc.
   1237 
   1238 2008-03-31  Roland McGrath  <roland (a] redhat.com>
   1239 
   1240 	* elf32_offscn.c: Make sure shdrs have been read in.
   1241 
   1242 2008-02-19  Roland McGrath  <roland (a] redhat.com>
   1243 
   1244 	* elf.h: Update from glibc.
   1245 
   1246 2008-02-08  Roland McGrath  <roland (a] redhat.com>
   1247 
   1248 	* elf.h: Update from glibc.
   1249 
   1250 2008-01-31  Ulrich Drepper  <drepper (a] redhat.com>
   1251 
   1252 	* elf_strptr.c (elf_strptr): Don't fail if the ELF file is currently
   1253 	under construction and no raw data can be read from disk.
   1254 
   1255 2008-01-30  Roland McGrath  <roland (a] redhat.com>
   1256 
   1257 	* elf.h: Update from glibc.
   1258 
   1259 2008-01-26  Roland McGrath  <roland (a] redhat.com>
   1260 
   1261 	* elf_begin.c (__libelf_next_arhdr): Rewrite conversions using a macro.
   1262 	Fixes various pastos in wrong type in sizeof, wrong string parsed.
   1263 
   1264 2008-01-20  Roland McGrath  <roland (a] redhat.com>
   1265 
   1266 	* elf_getaroff.c: Calculate from start_offset, instead of using
   1267 	parent's state.ar.offset field.
   1268 
   1269 2008-01-08  Roland McGrath  <roland (a] redhat.com>
   1270 
   1271 	* Makefile.am (euinclude): Variable removed.
   1272 	(pkginclude_HEADERS): Set this instead of euinclude_HEADERS.
   1273 
   1274 2008-01-03  Roland McGrath  <roland (a] redhat.com>
   1275 
   1276 	* common.h: Add __attribute__ ((unused)) to static functions.
   1277 
   1278 2007-12-20  Ulrich Drepper  <drepper (a] redhat.com>
   1279 
   1280 	* Makefile.am (libelf_a_SOURCES): Add elf_scnshndx.
   1281 	* libelfP.h (struct Elf_Scn): Add shndx_index field.
   1282 	Declare __elf_scnshndx_internal.
   1283 	* elf32_getshdr.c: Record location of extended section header.
   1284 	* elf_begin.c (file_read_elf): Likewise.
   1285 	* elf_scnshndx.c: New file.
   1286 	* libelf.h: Declare elf_scnshndx.
   1287 	* libelf.map: Add elf_scnshndx to version ELFUTILS_1.4.
   1288 
   1289 2007-11-12  Roland McGrath  <roland (a] redhat.com>
   1290 
   1291 	* libelf.h: Replace off64_t with loff_t throughout.
   1292 	Only that type name is unconditionally defined by <sys/types.h>
   1293 
   1294 2007-11-03  Roland McGrath  <roland (a] redhat.com>
   1295 
   1296 	* libelf.h (Elf_Data): Comment fix.
   1297 
   1298 2007-10-18  Roland McGrath  <roland (a] redhat.com>
   1299 
   1300 	* elf.h: Update from glibc.
   1301 
   1302 2007-10-07  Roland McGrath  <roland (a] redhat.com>
   1303 
   1304 	* elf_begin.c (__libelf_next_arhdr): Fix fencepost error and wrong
   1305 	member access in terminating name with no trailing /.  Trim trailing
   1306 	spaces when there is no /.
   1307 
   1308 2007-10-04  Roland McGrath  <roland (a] redhat.com>
   1309 
   1310 	* elf_end.c (elf_end): Don't free ELF->state.ar.ar_sym when it's -1l.
   1311 
   1312 2007-10-03  Roland McGrath  <roland (a] redhat.com>
   1313 
   1314 	* libelf.h (Elf_Data): Use off64_t for d_off.
   1315 	(Elf_Arhdr): Use off64_t for ar_size.
   1316 	(elf_update, elf_getbase, elf_getaroff): Return off64_t.
   1317 
   1318 	* gelf_rawchunk.c: File removed.
   1319 	* gelf_freechunk.c: File removed.
   1320 	* Makefile.am (libelf_a_SOURCES): Remove them.
   1321 	* libelf.map (ELFUTILS_1.0): Remove exports.
   1322 	* gelf.h: Remove decls.
   1323 
   1324 	* elf_getdata_rawchunk.c: New file.
   1325 	* Makefile.am (libelf_a_SOURCES): Add it.
   1326 	* libelf.map (ELFUTILS_1.3): Add elf_getdata_rawchunk.
   1327 	* libelf.h: Declare it.
   1328 	* libelfP.h (Elf_Data_Chunk): New type.
   1329 	(struct Elf.elf): New member `rawchunks'.
   1330 	* elf_end.c (elf_end): Free recorded rawchunk buffers.
   1331 
   1332 2007-08-24  Roland McGrath  <roland (a] redhat.com>
   1333 
   1334 	* gelf_getnote.c: New file.
   1335 	* Makefile.am (libelf_a_SOURCES): Add it.
   1336 	* gelf.h: Declare gelf_getnote.
   1337 	* libelf.map (ELFUTILS_1.3): Add gelf_getnote.
   1338 
   1339 	* libelfP.h (NOTE_ALIGN): New macro.
   1340 	* note_xlate.h: New file.
   1341 	* Makefile.am (noinst_HEADERS): Add it.
   1342 	* gelf_xlate.c: Include it.
   1343 	(__elf_xfctstom): Use elf_cvt_note.
   1344 	* elf_getdata.c (shtype_map, __libelf_type_align): Handle SHT_NOTE.
   1345 	(__libelf_set_rawdata): Likewise.
   1346 
   1347 2007-08-19  Roland McGrath  <roland (a] redhat.com>
   1348 
   1349 	* gelf_update_auxv.c: New file.
   1350 	* gelf_getauxv.c: New file.
   1351 	* Makefile.am (libelf_a_SOURCES): Add them.
   1352 	* gelf.h: Declare gelf_getauxv, gelf_update_auxv.
   1353 	* libelf.map (ELFUTILS_1.3): New set, inherits fom ELFUTILS_1.2.
   1354 	Export gelf_getauxv, gelf_update_auxv.
   1355 
   1356 	* libelf.h (Elf_Type): Add ELF_T_AUXV.
   1357 	* abstract.h: Add auxv_t entries.
   1358 	* exttypes.h: Likewise.
   1359 	* gelf_xlate.h: Likewise.
   1360 	* gelf_xlate.c (__elf_xfctstom): Add ELF_T_AUXV entries.
   1361 	* gelf_fsize.c (__libelf_type_sizes): Likewise.
   1362 
   1363 2007-08-12  Roland McGrath  <roland (a] redhat.com>
   1364 
   1365 	* elf32_updatefile.c (compare_sections): Sort secondarily on sh_size,
   1366 	and only tertiarily on index.
   1367 
   1368 2007-07-09  Roland McGrath  <roland (a] redhat.com>
   1369 
   1370 	* elf.h: Update from glibc.
   1371 
   1372 2007-04-22  Roland McGrath  <roland (a] redhat.com>
   1373 
   1374 	* elf.h: Update from glibc.
   1375 
   1376 2007-03-18  Roland McGrath  <roland (a] redhat.com>
   1377 
   1378 	* elf_begin.c (get_shnum): Fix test for e_shoff being out of bounds.
   1379 	Return zero when the section headers do not fit within MAXSIZE.
   1380 
   1381 2007-03-09  Roland McGrath  <roland (a] redhat.com>
   1382 
   1383 	* libelfP.h (LIBELF_EV_IDX): New macro.
   1384 	(__libelf_type_align): New macro.
   1385 	[! ALLOW_UNALIGNED]: Declare __libc_type_aligns array.
   1386 	* elf_getdata.c (shtype_map): Convert to just Elf_Type[][].
   1387 	(convert_data, __libelf_set_rawdata): Use that, __libelf_type_align,
   1388 	and __libelf_type_sizes, in place of old table.
   1389 	(__libc_type_aligns): New const variable.
   1390 
   1391 2007-02-04  Ulrich Drepper  <drepper (a] redhat.com>
   1392 
   1393 	* Makefile (libelf.so): Build with -z relro.
   1394 
   1395 	* elf_begin.c (read_file): When using ELF_C_READ_MMAP use MAP_PRIVATE.
   1396 
   1397 2007-01-30  Ulrich Drepper  <drepper (a] redhat.com>
   1398 
   1399 	* nlist.c: Close file descriptor before returning.
   1400 
   1401 2007-01-20  Roland McGrath  <roland (a] redhat.com>
   1402 
   1403 	* gnuhash_xlate.h (elf_cvt_gnuhash): Fix fence-post error so we
   1404 	convert the final word.
   1405 
   1406 	* elf32_getshdr.c: Don't byteswap shdr fields when EI_DATA matches
   1407 	MY_ELFDATA on !ALLOW_UNALIGNED machines.
   1408 
   1409 2007-01-18  Roland McGrath  <roland (a] redhat.com>
   1410 
   1411 	* gelf_rawchunk.c (gelf_rawchunk): Clear RESULT pointer after freeing
   1412 	it on read error.
   1413 
   1414 2006-10-13  Roland McGrath  <roland (a] redhat.com>
   1415 
   1416 	* elf32_updatenull.c: Look for and accept phdr also for ET_CORE.
   1417 	* elf_error.c (msgstr): Change ELF_E_INVALID_PHDR string.
   1418 
   1419 2006-08-29  Roland McGrath  <roland (a] redhat.com>
   1420 
   1421 	* elf32_getphdr.c: Don't byteswap phdr fields when EI_DATA matches
   1422 	MY_ELFDATA on !ALLOW_UNALIGNED machines.
   1423 	Reported by Christian Aichinger <Greek0 (a] gmx.net>.
   1424 
   1425 	* Makefile.am (CLEANFILES): Add libelf.so.$(VERSION).
   1426 
   1427 2006-08-08  Ulrich Drepper  <drepper (a] redhat.com>
   1428 
   1429 	* elf.h (DT_VALNUM): Update.
   1430 	(DT_ADDRNUM): Likewise.
   1431 
   1432 2006-07-12  Ulrich Drepper  <drepper (a] redhat.com>
   1433 
   1434 	* elf32_updatefile.c: Adjust for internal_function_def removal.
   1435 	* elf32_updatenull.c: Likewise.
   1436 	* elf_begin.c: Likewise.
   1437 	* elf_getdata.c: Likewise.
   1438 
   1439 2006-07-11  Ulrich Drepper  <drepper (a] redhat.com>
   1440 
   1441 	* libelf.h: Define ELF_T_GNUHASH.
   1442 	* elf_getdata.c (TYPEIDX): Handle SHT_GNU_HASH.
   1443 	(shtype_map): Add SHT_GNU_HASH entries.
   1444 	* gelf_xlate.c (__elf_xfctstom): Add ELF_T_GNUHASH entries.
   1445 	* gnuhash_xlate.h: New file.
   1446 	* Makefile.am (noinst_HEADERS): Add gnuhash_xlate.h.
   1447 
   1448 2006-07-06  Ulrich Drepper  <drepper (a] redhat.com>
   1449 
   1450 	* elf_gnu_hash.c: New file.
   1451 	* libelf.h: Declare elf_gnu_hash.
   1452 	* Makefile.am (libelf_a_SOURCES): Add elf_gnu_hash.
   1453 	* libelf.map: Add elf_gnu_map for version ELFUTILS_1.2.
   1454 
   1455 2006-06-15  Roland McGrath  <roland (a] redhat.com>
   1456 
   1457 	* libelf.h (elf_getarsym): Fix comment typo.
   1458 	Rename second parameter to be more explanatory.
   1459 	(elf_getident, elf_rawhide): Likewise.
   1460 
   1461 2006-05-28  Ulrich Drepper  <drepper (a] redhat.com>
   1462 
   1463 	* elf32_updatefile.c (updatemmap): Preserve section content if
   1464 	copying would overwrite them.
   1465 	Fix msync paramters.
   1466 
   1467 2006-04-04  Roland McGrath  <roland (a] redhat.com>
   1468 
   1469 	* elf32_updatefile.c (updatemmap): Handle other-endian case.
   1470 
   1471 2006-04-04  Ulrich Drepper  <drepper (a] redhat.com>
   1472 
   1473 	* elf32_updatefile.c (updatemmap): Cleanups.  Remove shdr_dest
   1474 	variable.  Before writing sections, make a copy of the section
   1475 	header data if necessary.  Don't write section header while
   1476 	writing the section constent, it might overwrite some sections.
   1477 	Restore the pointer afterwards.
   1478 	* elf32_updatenull.c (updatenull): If the offset of a section in a
   1479 	file changed make sure we read the section so that it'll be written
   1480 	out.
   1481 
   1482 	* elf_update.c: Remove debug message.
   1483 
   1484 2005-12-07  Roland McGrath  <roland (a] redhat.com>
   1485 
   1486 	* gelf_xlate.c [! ALLOW_UNALIGNED] (union unaligned): New type.
   1487 	(FETCH, STORE): New macros.
   1488 	(INLINE3): Use those to do alignment-friendly conversion.
   1489 
   1490 	* elf32_getshdr.c: Include map_address and start_offset in alignment
   1491 	calculations.
   1492 	* elf32_getphdr.c: Likewise.
   1493 
   1494 2005-11-19  Roland McGrath  <roland (a] redhat.com>
   1495 
   1496 	* elf.h: Update from glibc.
   1497 
   1498 2005-11-17  Roland McGrath  <roland (a] redhat.com>
   1499 
   1500 	* elf.h: Update from glibc.
   1501 
   1502 2005-11-10  Roland McGrath  <roland (a] redhat.com>
   1503 
   1504 	* elf.h: Update from glibc.
   1505 
   1506 2005-09-09  Roland McGrath  <roland (a] redhat.com>
   1507 
   1508 	* elf_update.c (write_file): Stat the file and fchmod it after update
   1509 	if its mode had S_ISUID or S_ISGID bits set.
   1510 
   1511 2005-08-28  Ulrich Drepper  <drepper (a] redhat.com>
   1512 
   1513 	* elf32_getphdr.c: Include <system.h>.  Use pread_retry instead of
   1514 	pread.  And branch prediction where useful.
   1515 	* elf_begin.c: Likewise.
   1516 	* elf_getdata.c: Likewise.
   1517 	* elf_getshstrndx.c: Likewise.
   1518 	* elf_readall.c: Likewise.
   1519 	* gelf_rawchunk.c: Likewise.
   1520 	* elf32_updatefile.c: Include <system.h>.  Use pread_retry instead of
   1521 	pread.  And branch prediction where useful.
   1522 	* elf_getarsym.c: Don't define pread_retry here.
   1523 
   1524 	* Makefile.am: Use $(LINK) not $(CC) when creating DSO.
   1525 	(%.os): Use COMPILE.os.
   1526 	(COMPILE.os): Filter out gconv options.
   1527 
   1528 2005-08-27  Ulrich Drepper  <drepper (a] redhat.com>
   1529 
   1530 	* elf_begin.c (file_read_elf): Avoid reading ELF header from file
   1531 	again.  Instead accept additional parameter which points to it if we
   1532 	don't use mmap.
   1533 	(get_shnum): Use passed in e_ident value as source of ELF header.
   1534 
   1535 2005-08-15  Ulrich Drepper  <drepper (a] redhat.com>
   1536 
   1537 	* elf_begin.c (__libelf_next_arhdr): Use TEMP_FAILURE_RETRY.
   1538 
   1539 	* Makefile (libelf_a_SOURCES): Add elf_getaroff.c.
   1540 	* libelf.map: Export elf_getaroff.
   1541 	* libelf.h: Declare elf_getaroff.
   1542 	* elf_getaroff.c: New file.
   1543 
   1544 2005-08-13  Ulrich Drepper  <drepper (a] redhat.com>
   1545 
   1546 	* elf_begin.c (get_shnum): Optimize memory handling.  Always read from
   1547 	mapped file if available.  Fix access to 64-bit sh_size.  Recognize
   1548 	overflow.
   1549 	(file_read_elf): Likewise.
   1550 
   1551 2005-08-12  Roland McGrath  <roland (a] redhat.com>
   1552 
   1553 	* elf32_offscn.c: Do not match empty sections at OFFSET unless
   1554 	there are no nonempty sections at that offset.
   1555 
   1556 2005-08-07  Ulrich Drepper  <drepper (a] redhat.com>
   1557 
   1558 	* elf.h: Update from glibc.
   1559 
   1560 2005-08-06  Ulrich Drepper  <drepper (a] redhat.com>
   1561 
   1562 	* Makefile.am (AM_CFLAGS): Add -fpic when BUILD_STATIC.
   1563 
   1564 2005-08-03  Ulrich Drepper  <drepper (a] redhat.com>
   1565 
   1566 	* libelf.map: Move elf32_offscn, elf64_offscn, and gelf_offscn in
   1567 	new version ELFUTILS_1.1.1.
   1568 
   1569 2005-08-02  Ulrich Drepper  <drepper (a] redhat.com>
   1570 
   1571 	* elf_error.c: Add handling of ELF_E_INVALID_OFFSET.
   1572 	* elf32_offscn.c: New file.
   1573 	* elf64_offscn.c: New file.
   1574 	* gelf_offscn.c: New file.
   1575 	* Makefile.am (libelf_a_SOURCES): Add elf32_offscn.c, elf64_offscn.c,
   1576 	and gelf_offscn.c.
   1577 	* libelf.sym: Export new symbols.
   1578 
   1579 2005-07-23  Ulrich Drepper  <drepper (a] redhat.com>
   1580 
   1581 	* elf-knowledge.h (SECTION_STRIP_P): Don't handle removal of debug
   1582 	sections here anymore.
   1583 	* elf32_checksum.c: Adjust for change in SECTION_STRIP_P interface.
   1584 
   1585 	* elf_update.c (elf_update): Get write lock, not read lock.
   1586 
   1587 	* elf32_updatenull.c (updatenull): Get section headers if necessary
   1588 	and possible.
   1589 
   1590 2005-07-22  Ulrich Drepper  <drepper (a] redhat.com>
   1591 
   1592 	* elf32_updatenull.c (updatenull): If program header hasn't been loaded
   1593 	yet, try to do it now.
   1594 	Don't unnecessarily update overflow of section count in zeroth section
   1595 	sh_size field.
   1596 	If section content hasn't been read yet, do it before looking for the
   1597 	block size.  If no section data present, infer size of section header.
   1598 
   1599 2005-05-11  Ulrich Drepper  <drepper (a] redhat.com>
   1600 
   1601 	* elf.h: Update again.
   1602 
   1603 2005-05-09  Ulrich Drepper  <drepper (a] redhat.com>
   1604 
   1605 	* elf.h: Update from glibc.
   1606 
   1607 2005-05-08  Roland McGrath  <roland (a] redhat.com>
   1608 
   1609 	* elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now.
   1610 	* elf_update.c (write_file) [_MUDFLAP]: Likewise.
   1611 
   1612 2005-03-29  Ulrich Drepper  <drepper (a] redhat.com>
   1613 
   1614 	* elf32_checksum.c: Use INTUSE and INTDEF to avoid PLTs.
   1615 	* elf_end.c: Likewise.
   1616 	* elf_getdata.c: Likewise.
   1617 	* gelf_getehdr.c: Likewise.
   1618 	* nlist.c: Likewise.
   1619 	* libelfP.h: Add declarations of internal functions.
   1620 
   1621 2005-02-15  Ulrich Drepper  <drepper (a] redhat.com>
   1622 
   1623 	* common.h (CONVERT): Make sure all values are unsigned.
   1624 	(CONVERT_TO): Likewise.
   1625 
   1626 	* Makefile.am (AM_CFLAGS): Add -Wformat=2.
   1627 	Fix rule to build libelf.so.
   1628 
   1629 2005-02-06  Ulrich Drepper  <drepper (a] redhat.com>
   1630 
   1631 	* Makefile.am: Cleanup AM_CFLAGS handling.  Add -Wunused -Wextra.
   1632 	Remove lint handling.
   1633 	* elf32_getphdr.c: Minor cleanups.
   1634 	* elf32_getshdr.c: Likewise.
   1635 	* elf32_updatefile.c: Likewise.
   1636 	* elf32_updatenull.c: Likewise.
   1637 	* elf_begin.c: Likewise.
   1638 	* elf_error.c: Likewise.
   1639 	* elf_getarsym.c: Likewise.
   1640 	* elf_getdata.c: Likewise.
   1641 	* elf_update.c: Likewise.
   1642 	* gelf_xlate.c: Likewise.
   1643 
   1644 2005-02-05  Ulrich Drepper  <drepper (a] redhat.com>
   1645 
   1646 	* Makefile.am: Check for text relocations in constructed DSO.
   1647 
   1648 	* Makefile.am [MUDFLAP] (AM_CFLAGS): Add -Werror -fpic -fmudflap.
   1649 
   1650 2005-02-04  Ulrich Drepper  <drepper (a] redhat.com>
   1651 
   1652 	* gelf_getehdr.c (gelf_getehdr): Slight optimization.
   1653 
   1654 	* elf32_checksum.c (checksum): Do not look at NOBITS sections.
   1655 
   1656 	* gelf.h: Add gelf_checksum prototype.
   1657 
   1658 2004-09-25  Ulrich Drepper  <drepper (a] redhat.com>
   1659 
   1660 	* elf32_checksum.c: Make compile with gcc 4.0.
   1661 	* elf32_updatefile.c: Likewise.
   1662 	* elf32_updatenull.c: Likewise.
   1663 	* elf_begin.c: Likewise.
   1664 	* elf_error.c: Likewise.
   1665 	* elf_getdata.c: Likewise.
   1666 	* elf_getident.c: Likewise.
   1667 
   1668 2004-04-01  Ulrich Drepper  <drepper (a] redhat.com>
   1669 
   1670 	* elf.h: Update from glibc.
   1671 
   1672 2004-01-23  Ulrich Drepper  <drepper (a] redhat.com>
   1673 
   1674 	* elf_update.c: Fix locking.
   1675 	* elf_clone.c: Likewise.
   1676 
   1677 	* libelf.h: Define ELF_T_LIB.
   1678 	* gelf_getlib.c: New file.
   1679 	* gelf_update_lib.c: New file.
   1680 	* gelf.h: Declare the new functions.  Define GElf_Lib.
   1681 	* abstract.h: Define Lib, Lib32, Lib64.
   1682 	* gelf_xlate.c (__elf_xfctstom): Add ELF_T_LIB entry.
   1683 	* gelf_xlate.h: Add entry for ElfXX_Lib.
   1684 	* elf_getdata.c: Recognize SHT_GNU_LIBLIST as a known section type.
   1685 	* libelf.map: Add new symbols to ELFUTILS_1.1.
   1686 	* Makefile.am (libelf_a_SOURCES): Add gelf_getlib.c and
   1687 	gelf_update_lib.c.
   1688 
   1689 2004-01-17  Ulrich Drepper  <drepper (a] redhat.com>
   1690 
   1691 	* Makefile.am: Support building with mudflap.
   1692 
   1693 	* gelf_xlate.c (INLINE3): Avoid using cast as lvalue.
   1694 	* dl-hash.h (_dl_elf_hash): Likewise.
   1695 
   1696 2004-01-05  Ulrich Drepper  <drepper (a] redhat.com>
   1697 
   1698 	* elf-knowledge.h: New file.  From libelf subdir.
   1699 	* Makefile.am (euincludedir): Define.
   1700 	(euinclude_HEADERS): Add elf-knowledge.h.
   1701 
   1702 2003-09-24  Ulrich Drepper  <drepper (a] redhat.com>
   1703 
   1704 	* elf.h: Define some PT_IA_64_HP_* constants.
   1705 
   1706 2003-09-23  Jakub Jelinek  <jakub (a] redhat.com>
   1707 
   1708 	* libelfP.h (struct Elf): Move state.elf64.sizestr_offset after
   1709 	state.elf64.scnincr to match state.elf{,32}.
   1710 
   1711 2003-08-12  Ulrich Drepper  <drepper (a] redhat.com>
   1712 
   1713 	* elf32_updatefile.c (__updatemmap): When writing back file where
   1714 	some sections have not been read in, count their sizes based on
   1715 	the section header.
   1716 
   1717 2003-08-11  Ulrich Drepper  <drepper (a] redhat.com>
   1718 
   1719 	* Moved to CVS archive.
   1720