1 2013-08-28 Mark Wielaard <mjw@redhat.com>
3 * gelf_getauxv.c (gelf_getauxv): Add missing whitespace.
5 2013-08-27 Mark Wielaard <mjw@redhat.com>
7 * gelf_getauxv.c (gelf_getauxv): Remove unnecessary casts to char *.
9 2013-08-25 Kurt Roeckx <kurt@roeckx.be>
11 * gelf_getauxv.c (gelf_getauxv): Use memcpy instead of pointer
12 dereference to avoid alignment problems.
14 2013-01-07 Roland McGrath <roland@hack.frob.com>
16 * elf_getarsym.c (elf_getarsym): Copy FILE_DATA into stack space if it
17 would be unaligned and !ALLOW_UNALIGNED.
19 * elf_getarsym.c (read_number_entries): Use memcpy instead of pointer
20 dereference so as not to assume the field is naturally aligned.
22 2012-09-17 Petr Machata <pmachata@redhat.com>
24 * elf.h: Update from glibc.
26 2012-08-16 Roland McGrath <roland@hack.frob.com>
28 * elf.h: Update from glibc.
30 2012-08-14 Mark Wielaard <mjw@redhat.com>
32 * elf32_checksum.c (ebl_debugscn_p): Removed unused define and
33 confusing outdated comment.
35 2012-08-01 Petr Machata <pmachata@redhat.com>
37 * elf_getarsym (read_number_entries): New function.
38 (elf_getarsym): Handle 64-bit symbol table, stored in special
39 entry named "/SYM64/".
40 * elf_begin.c (__libelf_next_arhdr_wrlock): Don't reject archive
41 because it contains 64-bit symbol table.
43 2012-07-19 Mark Wielaard <mjw@redhat.com>
45 * elf32_getshdr.c (load_shdr_wrlock): Add elf->flags & ELF_F_MALLOCED
48 2012-07-17 Petr Machata <pmachata@redhat.com>
50 * elf32_xlatetom.c (elfw2(LIBELFBITS, xlatetom)): Do not check for
51 integer number of records in case of ELF_T_NHDR.
53 2012-04-02 Mark Wielaard <mjw@redhat.com>
55 * elf32_offscn.c: Do not match SHT_NOBITS sections at OFFSET unless
56 there are no nonempty sections at that offset.
58 2012-03-21 Roland McGrath <roland@hack.frob.com>
60 * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check.
62 2011-02-26 Mark Wielaard <mjw@redhat.com>
64 * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini.
66 2011-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
68 * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Fix off64_t overflow
69 when MAXIMUM_SIZE == ~0.
71 2010-08-18 Roland McGrath <roland@redhat.com>
73 * gelf_fsize.c (__libelf_type_sizes): Add entries for ELF_T_LIB
75 Reported by Mark Hatle <mark.hatle@windriver.com>.
77 * exttypes.h: Add cases for ElfNN_Lib.
78 Reported by Mark Hatle <mark.hatle@windriver.com>.
80 2010-06-14 Ulrich Drepper <drepper@redhat.com>
82 * gelf_update_shdr.c: Implicitly set ELF_F_DIRTY bit.
83 * gelf_update_phdr.c: Likewise.
84 * gelf_update_ehdr.c: Likewise.
86 2010-04-14 Roland McGrath <roland@redhat.com>
88 * elf32_getphdr.c: Check for e_phoff/size outside the file bounds.
89 * elf_begin.c (file_read_elf): Don't set .phdr here.
91 2010-04-13 Roland McGrath <roland@redhat.com>
93 * elf.h: Update from glibc.
95 2010-04-06 Roland McGrath <roland@redhat.com>
97 * elf_error.c (ELF_E_FD_MISMATCH_IDX): Avoid nonobvious abbreviation
100 2010-04-01 Petr Machata <pmachata@redhat.com>
102 * elf_getdata.c (__elf_getdata_rdlock): Initialize data.s for data
103 that do not need a conversion.
105 2010-03-11 Roland McGrath <roland@redhat.com>
107 * elf.h: Update from glibc.
109 2010-03-04 Ulrich Drepper <drepper@redhat.com>
111 * elf.h: Update from glibc.
113 2010-02-17 Roland McGrath <roland@redhat.com>
115 * elf_begin.c (file_read_elf): Leave section rawdata_base and
116 data_base pointers null when [sh_offset,sh_size) points outside
119 2010-02-15 Roland McGrath <roland@redhat.com>
121 * Makefile.am: Use config/eu.am for common stuff.
123 2010-01-07 Roland McGrath <roland@redhat.com>
125 * elf32_getphdr.c: Use __elf_getphdrnum_rdlock.
126 * gelf_getphdr.c: Likewise.
127 * gelf_update_phdr.c: Likewise.
128 * elf32_updatefile.c (__elf32_updatemmap, __elf32_updatefile): Likewise.
129 * elf32_updatenull.c (__elf32_updatenull_wrlock): Likewise.
130 * elf32_newphdr.c: Clear section 0's sh_info when resetting e_phnum.
131 If COUNT is too large, use store PN_XNUM instead and set sh_info.
132 * elf_begin.c (file_read_elf): Always allocate space we can use later
133 for section 0 if doing RDWR.
135 * elf_getphdrnum.c: New file.
136 * Makefile.am (libelf_a_SOURCES): Add it.
137 * libelf.h: Declare elf_getphdrnum.
138 * libelfP.h: Declare __elf_getphdrnum_rdlock.
139 * libelf.map (ELFUTILS_1.6): New set, add elf_getphdrnum.
141 * elf.h: Update from glibc.
143 2009-10-23 Lubomir Rintel <lkundrak@v3.sk>
145 * elf32_updatefile.c (fill_mmap): When starting past shdr_end, start
146 filling from section start, not shdr_end.
148 2009-11-10 Roland McGrath <roland@redhat.com>
150 * elf_readall.c (__libelf_readall): Fetch file size if not yet known.
152 2009-11-06 Mark Wielaard <mjw@redhat.com>
154 * elf_next.c (elf_next): Mark the archive header as unusable when
155 there is no next ar element.
157 2009-08-12 Mark Wielaard <mjw@redhat.com>
159 * Makefile.am (libelf.so): Use -Wl,-z,defs not -defs.
161 2009-07-26 Ulrich Drepper <drepper@redhat.com>
163 * elf.h: Update from glibc.
165 2009-07-21 Ulrich Drepper <drepper@redhat.com>
167 * elf32_updatefile.c (__elfXX_updatemmap): Fix handling of gaps between
168 sections. Patch by Lubomir Rintel <lkundrak@v3.sk>.
170 2009-07-08 Roland McGrath <roland@redhat.com>
172 * libelfP.h (struct Elf): Remove unused ar.has_index field.
173 Reorder various members for optimal packing.
175 2009-07-08 Ulrich Drepper <drepper@redhat.com>
177 * elf.h: Update from glibc.
179 2009-06-13 Ulrich Drepper <drepper@redhat.com>
181 * Makefile.am (libelf_a_SOURCES): Replace elf_getshnum.c and
182 elf_getshstrndx.c with elf_getshdrnum.c and elf_getshdrstrndx.c.
183 * elf_getshnum.c: Renamed to...
184 * elf_getshdrnum.c: ...this. Rename function and add old name as
185 alias. Likewise for internal functions with derived names.
186 * elf_getshstrndx.c: Renamed to...
187 * elf_getshdrstrndx.c: ...this. Rename function and add old name as
188 alias. Likewise for internal functions with derived names.
189 * libelf.h: Add prototypes for new names. Make old names as
191 * libelfP.h: Rename internal function prototypes.
192 * libelf.map: Export for names.
193 * elf32_checksum.c: Don't use deprecated functions.
194 * elf32_getshdr.c: Likewise.
196 2009-06-01 Ulrich Drepper <drepper@redhat.com>
198 * elf.h: Update from glibc.
200 2009-04-14 Roland McGrath <roland@redhat.com>
202 * elf.h: Update from glibc.
204 2009-04-01 Roland McGrath <roland@redhat.com>
206 * elf.h: Update from glibc.
208 2009-02-10 Ulrich Drepper <drepper@redhat.com>
210 * elf32_updatefile.c (updatefile): For the zeroth section we still
211 have to copy the section header.
213 2009-02-01 Ulrich Drepper <drepper@redhat.com>
215 * elf_strptr.c: Add comment re possible problem.
217 2009-01-26 Ulrich Drepper <drepper@redhat.com>
219 * elf32_updatenull.c (updatenull_wrlock): Fix comment of
220 ELF_F_LAYOUT behaviour re section header table.
222 2009-01-22 Ulrich Drepper <drepper@redhat.com>
224 * elf32_updatefile.c (__elfXX_updatemmap): Fill the gap between
225 sections even if only the section at the start of the gap has been
227 (__elfXX_updatefile): Likewise.
229 2009-01-21 Ulrich Drepper <drepper@redhat.com>
231 * elf32_updatefile.c (__elfXX_updatemmap): Skip most of the loop to
232 handle sections for NOBITS sections.
233 (elfXX_updatefile): Likewise.
235 * elf32_updatefile.c (__elfXX_updatemmap): When skipping non-NOBITS
236 sections we haven't loaded, update last_position based on scn_start,
237 not based on old value. Don't run the loop for the dummy section 0.
238 (elfXX_updatefile): Don't run the loop for the dummy section 0.
240 2009-01-10 Ulrich Drepper <drepper@redhat.com>
242 * libelfP.h (_): We only have one translation domain, elfutils.
244 * Makefile.am: Use USE_LOCKS instead of USE_TLS.
245 * elf_error.c: Always use __thread. Remove all !USE_TLS code.
247 2009-01-04 Roland McGrath <roland@redhat.com>
249 * note_xlate.h (elf_cvt_note): Don't examine a size too small to
250 container a note header.
252 2008-12-11 Roland McGrath <roland@redhat.com>
254 * elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Handle
255 placement offset going backwards, for out-of-order or overlapping
256 (bogus) sh_offset layouts. It's a dumb use, but should not crash.
257 (__elfw2(LIBELFBITS,updatefile)): Likewise.
260 * libelf.h (Elf_Data): Whitespace fix.
262 2008-12-10 Roland McGrath <roland@redhat.com>
264 * elf_getarhdr.c (elf_getarhdr): Fix missing rename in last change.
266 2008-10-22 Petr Machata <pmachata@redhat.com>
268 * elf_rawfile.c (elf_rawfile): Lock around elf-> references.
270 2008-10-21 Petr Machata <pmachata@redhat.com>
272 * libelfP.h: Rename getehdr_rdlock to getehdr_wrlock.
273 * elf32_getehdr.c (getehdr_rdlock): Move the code to new function
274 getehdr_impl and make it a wrapper. Rename to getehdr_wrlock.
275 (getehdr_impl): Guard elf->class init with wrlock.
276 (getehdr): Also make it a wrapper of getehdr_impl.
277 * elf32_updatenull.c (updatenull_wrlock): Call getehdr_wrlock.
279 2008-10-20 Petr Machata <pmachata@redhat.com>
281 * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Lock around the
282 code that reads mutable elf state. Relock to write lock to chain
283 the new chunk on the elf rawchunks list.
285 2008-10-20 Petr Machata <pmachata@redhat.com>
287 * elf32_checksum.c (checksum): Place a lock around the code that
288 processes data. Make it wrlock if the code needs to xlate the
289 data before processing.
291 2008-10-16 Petr Machata <pmachata@redhat.com>
294 (__libelf_next_arhdr): Rename to __libelf_next_arhdr_wrlock.
295 (dup_elf): Adjust the call.
296 (elf_begin): New local function lock_dup_elf. Relocks the elf if
297 necessary before calling dup. Call this instead of dup_elf.
299 (elf_getarhdr): Lock before calling __libelf_next_arhdr_wrlock.
300 * elf_next.c (elf_next): Likewise.
301 * elf_rand.c (elf_rand): Likewise.
303 2008-10-14 Petr Machata <pmachata@redhat.com>
305 * elf_getdata.c (__elf_getdata_rdlock): Lock before converting.
307 2008-11-26 Roland McGrath <roland@redhat.com>
309 * elf.h: Update from glibc.
311 2008-10-06 Roland McGrath <roland@redhat.com>
313 * elf_getarhdr.c (elf_getarhdr): Return NULL when passed NULL.
315 2008-08-27 Roland McGrath <roland@redhat.com>
317 * elf_begin.c (get_shnum): Avoid misaligned reads for matching endian.
319 * libelfP.h [!ALLOW_UNALIGNED] (__libelf_type_align): Fix CLASS index.
321 2008-08-25 Roland McGrath <roland@redhat.com>
323 * Makefile.am (libelf_so_LDLIBS): New variable.
324 (libelf.so): Use it in the link.
326 2008-08-21 Petr Machata <pmachata@redhat.com>
328 * elf_getdata.c, libelfP.h
329 (__elf_getdata_internal): Rename to __elf_getdata_rdlock.
330 (__libelf_set_rawdata_wrlock): New function.
331 (__libelf_set_rawdata): Make it a wrapper that calls *_wrlock.
332 * elf32_updatenull.c, libelfP.h
333 (__elfNN_updatenull): Rename to __elfNN_updatenull_wrlock.
335 2008-08-21 Petr Machata <pmachata@redhat.com>
337 * elf32_getphdr.c, libelfP.h
338 (__elfNN_getphdr_internal): Drop. Move __elfNN_getphdr_internal
339 code to __elfNN_getphdr_wrlock.
340 (__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): New functions.
341 (__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): Make these
342 wrappers of getphdr_impl.
344 2008-08-21 Petr Machata <pmachata@redhat.com>
346 * elf32_getehdr.c, libelfP.h
347 (__elfNN_getehdr_internal): Rename to __elfNN_getehdr_rdlock.
348 * gelf_getehdr, libelfP.h:
349 (__gelf_getehdr_internal): Rename to __gelf_getehdr_rdlock.
351 2008-08-21 Petr Machata <pmachata@redhat.com>
354 (__elfNN_getshdr_internal): Drop.
355 (load_shdr_wrlock, scn_valid): New functions, contain bits of
356 behaviour from __elfNN_getshdr_internal.
357 (__elfNN_getshdr_rdlock, __elfNN_getshdr_wrlock): Replacements for
358 dropped _internal functions above.
360 (__elf_getshnum_internal): Rename to __elf_getshnum_rdlock.
362 2008-08-04 Petr Machata <pmachata@redhat.com>
364 * libelfP.h (RWLOCK_RDLOCK, RWLOCK_WRLOCK, RWLOCK_UNLOCK): New macros.
366 2008-07-28 Roland McGrath <roland@redhat.com>
368 * elf.h: Update from glibc.
370 2008-03-31 Roland McGrath <roland@redhat.com>
372 * elf32_offscn.c: Make sure shdrs have been read in.
374 2008-02-19 Roland McGrath <roland@redhat.com>
376 * elf.h: Update from glibc.
378 2008-02-08 Roland McGrath <roland@redhat.com>
380 * elf.h: Update from glibc.
382 2008-01-31 Ulrich Drepper <drepper@redhat.com>
384 * elf_strptr.c (elf_strptr): Don't fail if the ELF file is currently
385 under construction and no raw data can be read from disk.
387 2008-01-30 Roland McGrath <roland@redhat.com>
389 * elf.h: Update from glibc.
391 2008-01-26 Roland McGrath <roland@redhat.com>
393 * elf_begin.c (__libelf_next_arhdr): Rewrite conversions using a macro.
394 Fixes various pastos in wrong type in sizeof, wrong string parsed.
396 2008-01-20 Roland McGrath <roland@redhat.com>
398 * elf_getaroff.c: Calculate from start_offset, instead of using
399 parent's state.ar.offset field.
401 2008-01-08 Roland McGrath <roland@redhat.com>
403 * Makefile.am (euinclude): Variable removed.
404 (pkginclude_HEADERS): Set this instead of euinclude_HEADERS.
406 2008-01-03 Roland McGrath <roland@redhat.com>
408 * common.h: Add __attribute__ ((unused)) to static functions.
410 2007-12-20 Ulrich Drepper <drepper@redhat.com>
412 * Makefile.am (libelf_a_SOURCES): Add elf_scnshndx.
413 * libelfP.h (struct Elf_Scn): Add shndx_index field.
414 Declare __elf_scnshndx_internal.
415 * elf32_getshdr.c: Record location of extended section header.
416 * elf_begin.c (file_read_elf): Likewise.
417 * elf_scnshndx.c: New file.
418 * libelf.h: Declare elf_scnshndx.
419 * libelf.map: Add elf_scnshndx to version ELFUTILS_1.4.
421 2007-11-12 Roland McGrath <roland@redhat.com>
423 * libelf.h: Replace off64_t with loff_t throughout.
424 Only that type name is unconditionally defined by <sys/types.h>
426 2007-11-03 Roland McGrath <roland@redhat.com>
428 * libelf.h (Elf_Data): Comment fix.
430 2007-10-18 Roland McGrath <roland@redhat.com>
432 * elf.h: Update from glibc.
434 2007-10-07 Roland McGrath <roland@redhat.com>
436 * elf_begin.c (__libelf_next_arhdr): Fix fencepost error and wrong
437 member access in terminating name with no trailing /. Trim trailing
438 spaces when there is no /.
440 2007-10-04 Roland McGrath <roland@redhat.com>
442 * elf_end.c (elf_end): Don't free ELF->state.ar.ar_sym when it's -1l.
444 2007-10-03 Roland McGrath <roland@redhat.com>
446 * libelf.h (Elf_Data): Use off64_t for d_off.
447 (Elf_Arhdr): Use off64_t for ar_size.
448 (elf_update, elf_getbase, elf_getaroff): Return off64_t.
450 * gelf_rawchunk.c: File removed.
451 * gelf_freechunk.c: File removed.
452 * Makefile.am (libelf_a_SOURCES): Remove them.
453 * libelf.map (ELFUTILS_1.0): Remove exports.
454 * gelf.h: Remove decls.
456 * elf_getdata_rawchunk.c: New file.
457 * Makefile.am (libelf_a_SOURCES): Add it.
458 * libelf.map (ELFUTILS_1.3): Add elf_getdata_rawchunk.
459 * libelf.h: Declare it.
460 * libelfP.h (Elf_Data_Chunk): New type.
461 (struct Elf.elf): New member `rawchunks'.
462 * elf_end.c (elf_end): Free recorded rawchunk buffers.
464 2007-08-24 Roland McGrath <roland@redhat.com>
466 * gelf_getnote.c: New file.
467 * Makefile.am (libelf_a_SOURCES): Add it.
468 * gelf.h: Declare gelf_getnote.
469 * libelf.map (ELFUTILS_1.3): Add gelf_getnote.
471 * libelfP.h (NOTE_ALIGN): New macro.
472 * note_xlate.h: New file.
473 * Makefile.am (noinst_HEADERS): Add it.
474 * gelf_xlate.c: Include it.
475 (__elf_xfctstom): Use elf_cvt_note.
476 * elf_getdata.c (shtype_map, __libelf_type_align): Handle SHT_NOTE.
477 (__libelf_set_rawdata): Likewise.
479 2007-08-19 Roland McGrath <roland@redhat.com>
481 * gelf_update_auxv.c: New file.
482 * gelf_getauxv.c: New file.
483 * Makefile.am (libelf_a_SOURCES): Add them.
484 * gelf.h: Declare gelf_getauxv, gelf_update_auxv.
485 * libelf.map (ELFUTILS_1.3): New set, inherits fom ELFUTILS_1.2.
486 Export gelf_getauxv, gelf_update_auxv.
488 * libelf.h (Elf_Type): Add ELF_T_AUXV.
489 * abstract.h: Add auxv_t entries.
490 * exttypes.h: Likewise.
491 * gelf_xlate.h: Likewise.
492 * gelf_xlate.c (__elf_xfctstom): Add ELF_T_AUXV entries.
493 * gelf_fsize.c (__libelf_type_sizes): Likewise.
495 2007-08-12 Roland McGrath <roland@redhat.com>
497 * elf32_updatefile.c (compare_sections): Sort secondarily on sh_size,
498 and only tertiarily on index.
500 2007-07-09 Roland McGrath <roland@redhat.com>
502 * elf.h: Update from glibc.
504 2007-04-22 Roland McGrath <roland@redhat.com>
506 * elf.h: Update from glibc.
508 2007-03-18 Roland McGrath <roland@redhat.com>
510 * elf_begin.c (get_shnum): Fix test for e_shoff being out of bounds.
511 Return zero when the section headers do not fit within MAXSIZE.
513 2007-03-09 Roland McGrath <roland@redhat.com>
515 * libelfP.h (LIBELF_EV_IDX): New macro.
516 (__libelf_type_align): New macro.
517 [! ALLOW_UNALIGNED]: Declare __libc_type_aligns array.
518 * elf_getdata.c (shtype_map): Convert to just Elf_Type[][].
519 (convert_data, __libelf_set_rawdata): Use that, __libelf_type_align,
520 and __libelf_type_sizes, in place of old table.
521 (__libc_type_aligns): New const variable.
523 2007-02-04 Ulrich Drepper <drepper@redhat.com>
525 * Makefile (libelf.so): Build with -z relro.
527 * elf_begin.c (read_file): When using ELF_C_READ_MMAP use MAP_PRIVATE.
529 2007-01-30 Ulrich Drepper <drepper@redhat.com>
531 * nlist.c: Close file descriptor before returning.
533 2007-01-20 Roland McGrath <roland@redhat.com>
535 * gnuhash_xlate.h (elf_cvt_gnuhash): Fix fence-post error so we
536 convert the final word.
538 * elf32_getshdr.c: Don't byteswap shdr fields when EI_DATA matches
539 MY_ELFDATA on !ALLOW_UNALIGNED machines.
541 2007-01-18 Roland McGrath <roland@redhat.com>
543 * gelf_rawchunk.c (gelf_rawchunk): Clear RESULT pointer after freeing
546 2006-10-13 Roland McGrath <roland@redhat.com>
548 * elf32_updatenull.c: Look for and accept phdr also for ET_CORE.
549 * elf_error.c (msgstr): Change ELF_E_INVALID_PHDR string.
551 2006-08-29 Roland McGrath <roland@redhat.com>
553 * elf32_getphdr.c: Don't byteswap phdr fields when EI_DATA matches
554 MY_ELFDATA on !ALLOW_UNALIGNED machines.
555 Reported by Christian Aichinger <Greek0@gmx.net>.
557 * Makefile.am (CLEANFILES): Add libelf.so.$(VERSION).
559 2006-08-08 Ulrich Drepper <drepper@redhat.com>
561 * elf.h (DT_VALNUM): Update.
562 (DT_ADDRNUM): Likewise.
564 2006-07-12 Ulrich Drepper <drepper@redhat.com>
566 * elf32_updatefile.c: Adjust for internal_function_def removal.
567 * elf32_updatenull.c: Likewise.
568 * elf_begin.c: Likewise.
569 * elf_getdata.c: Likewise.
571 2006-07-11 Ulrich Drepper <drepper@redhat.com>
573 * libelf.h: Define ELF_T_GNUHASH.
574 * elf_getdata.c (TYPEIDX): Handle SHT_GNU_HASH.
575 (shtype_map): Add SHT_GNU_HASH entries.
576 * gelf_xlate.c (__elf_xfctstom): Add ELF_T_GNUHASH entries.
577 * gnuhash_xlate.h: New file.
578 * Makefile.am (noinst_HEADERS): Add gnuhash_xlate.h.
580 2006-07-06 Ulrich Drepper <drepper@redhat.com>
582 * elf_gnu_hash.c: New file.
583 * libelf.h: Declare elf_gnu_hash.
584 * Makefile.am (libelf_a_SOURCES): Add elf_gnu_hash.
585 * libelf.map: Add elf_gnu_map for version ELFUTILS_1.2.
587 2006-06-15 Roland McGrath <roland@redhat.com>
589 * libelf.h (elf_getarsym): Fix comment typo.
590 Rename second parameter to be more explanatory.
591 (elf_getident, elf_rawhide): Likewise.
593 2006-05-28 Ulrich Drepper <drepper@redhat.com>
595 * elf32_updatefile.c (updatemmap): Preserve section content if
596 copying would overwrite them.
599 2006-04-04 Roland McGrath <roland@redhat.com>
601 * elf32_updatefile.c (updatemmap): Handle other-endian case.
603 2006-04-04 Ulrich Drepper <drepper@redhat.com>
605 * elf32_updatefile.c (updatemmap): Cleanups. Remove shdr_dest
606 variable. Before writing sections, make a copy of the section
607 header data if necessary. Don't write section header while
608 writing the section constent, it might overwrite some sections.
609 Restore the pointer afterwards.
610 * elf32_updatenull.c (updatenull): If the offset of a section in a
611 file changed make sure we read the section so that it'll be written
614 * elf_update.c: Remove debug message.
616 2005-12-07 Roland McGrath <roland@redhat.com>
618 * gelf_xlate.c [! ALLOW_UNALIGNED] (union unaligned): New type.
619 (FETCH, STORE): New macros.
620 (INLINE3): Use those to do alignment-friendly conversion.
622 * elf32_getshdr.c: Include map_address and start_offset in alignment
624 * elf32_getphdr.c: Likewise.
626 2005-11-19 Roland McGrath <roland@redhat.com>
628 * elf.h: Update from glibc.
630 2005-11-17 Roland McGrath <roland@redhat.com>
632 * elf.h: Update from glibc.
634 2005-11-10 Roland McGrath <roland@redhat.com>
636 * elf.h: Update from glibc.
638 2005-09-09 Roland McGrath <roland@redhat.com>
640 * elf_update.c (write_file): Stat the file and fchmod it after update
641 if its mode had S_ISUID or S_ISGID bits set.
643 2005-08-28 Ulrich Drepper <drepper@redhat.com>
645 * elf32_getphdr.c: Include <system.h>. Use pread_retry instead of
646 pread. And branch prediction where useful.
647 * elf_begin.c: Likewise.
648 * elf_getdata.c: Likewise.
649 * elf_getshstrndx.c: Likewise.
650 * elf_readall.c: Likewise.
651 * gelf_rawchunk.c: Likewise.
652 * elf32_updatefile.c: Include <system.h>. Use pread_retry instead of
653 pread. And branch prediction where useful.
654 * elf_getarsym.c: Don't define pread_retry here.
656 * Makefile.am: Use $(LINK) not $(CC) when creating DSO.
657 (%.os): Use COMPILE.os.
658 (COMPILE.os): Filter out gconv options.
660 2005-08-27 Ulrich Drepper <drepper@redhat.com>
662 * elf_begin.c (file_read_elf): Avoid reading ELF header from file
663 again. Instead accept additional parameter which points to it if we
665 (get_shnum): Use passed in e_ident value as source of ELF header.
667 2005-08-15 Ulrich Drepper <drepper@redhat.com>
669 * elf_begin.c (__libelf_next_arhdr): Use TEMP_FAILURE_RETRY.
671 * Makefile (libelf_a_SOURCES): Add elf_getaroff.c.
672 * libelf.map: Export elf_getaroff.
673 * libelf.h: Declare elf_getaroff.
674 * elf_getaroff.c: New file.
676 2005-08-13 Ulrich Drepper <drepper@redhat.com>
678 * elf_begin.c (get_shnum): Optimize memory handling. Always read from
679 mapped file if available. Fix access to 64-bit sh_size. Recognize
681 (file_read_elf): Likewise.
683 2005-08-12 Roland McGrath <roland@redhat.com>
685 * elf32_offscn.c: Do not match empty sections at OFFSET unless
686 there are no nonempty sections at that offset.
688 2005-08-07 Ulrich Drepper <drepper@redhat.com>
690 * elf.h: Update from glibc.
692 2005-08-06 Ulrich Drepper <drepper@redhat.com>
694 * Makefile.am (AM_CFLAGS): Add -fpic when BUILD_STATIC.
696 2005-08-03 Ulrich Drepper <drepper@redhat.com>
698 * libelf.map: Move elf32_offscn, elf64_offscn, and gelf_offscn in
699 new version ELFUTILS_1.1.1.
701 2005-08-02 Ulrich Drepper <drepper@redhat.com>
703 * elf_error.c: Add handling of ELF_E_INVALID_OFFSET.
704 * elf32_offscn.c: New file.
705 * elf64_offscn.c: New file.
706 * gelf_offscn.c: New file.
707 * Makefile.am (libelf_a_SOURCES): Add elf32_offscn.c, elf64_offscn.c,
709 * libelf.sym: Export new symbols.
711 2005-07-23 Ulrich Drepper <drepper@redhat.com>
713 * elf-knowledge.h (SECTION_STRIP_P): Don't handle removal of debug
714 sections here anymore.
715 * elf32_checksum.c: Adjust for change in SECTION_STRIP_P interface.
717 * elf_update.c (elf_update): Get write lock, not read lock.
719 * elf32_updatenull.c (updatenull): Get section headers if necessary
722 2005-07-22 Ulrich Drepper <drepper@redhat.com>
724 * elf32_updatenull.c (updatenull): If program header hasn't been loaded
725 yet, try to do it now.
726 Don't unnecessarily update overflow of section count in zeroth section
728 If section content hasn't been read yet, do it before looking for the
729 block size. If no section data present, infer size of section header.
731 2005-05-11 Ulrich Drepper <drepper@redhat.com>
733 * elf.h: Update again.
735 2005-05-09 Ulrich Drepper <drepper@redhat.com>
737 * elf.h: Update from glibc.
739 2005-05-08 Roland McGrath <roland@redhat.com>
741 * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now.
742 * elf_update.c (write_file) [_MUDFLAP]: Likewise.
744 2005-03-29 Ulrich Drepper <drepper@redhat.com>
746 * elf32_checksum.c: Use INTUSE and INTDEF to avoid PLTs.
747 * elf_end.c: Likewise.
748 * elf_getdata.c: Likewise.
749 * gelf_getehdr.c: Likewise.
751 * libelfP.h: Add declarations of internal functions.
753 2005-02-15 Ulrich Drepper <drepper@redhat.com>
755 * common.h (CONVERT): Make sure all values are unsigned.
756 (CONVERT_TO): Likewise.
758 * Makefile.am (AM_CFLAGS): Add -Wformat=2.
759 Fix rule to build libelf.so.
761 2005-02-06 Ulrich Drepper <drepper@redhat.com>
763 * Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra.
764 Remove lint handling.
765 * elf32_getphdr.c: Minor cleanups.
766 * elf32_getshdr.c: Likewise.
767 * elf32_updatefile.c: Likewise.
768 * elf32_updatenull.c: Likewise.
769 * elf_begin.c: Likewise.
770 * elf_error.c: Likewise.
771 * elf_getarsym.c: Likewise.
772 * elf_getdata.c: Likewise.
773 * elf_update.c: Likewise.
774 * gelf_xlate.c: Likewise.
776 2005-02-05 Ulrich Drepper <drepper@redhat.com>
778 * Makefile.am: Check for text relocations in constructed DSO.
780 * Makefile.am [MUDFLAP] (AM_CFLAGS): Add -Werror -fpic -fmudflap.
782 2005-02-04 Ulrich Drepper <drepper@redhat.com>
784 * gelf_getehdr.c (gelf_getehdr): Slight optimization.
786 * elf32_checksum.c (checksum): Do not look at NOBITS sections.
788 * gelf.h: Add gelf_checksum prototype.
790 2004-09-25 Ulrich Drepper <drepper@redhat.com>
792 * elf32_checksum.c: Make compile with gcc 4.0.
793 * elf32_updatefile.c: Likewise.
794 * elf32_updatenull.c: Likewise.
795 * elf_begin.c: Likewise.
796 * elf_error.c: Likewise.
797 * elf_getdata.c: Likewise.
798 * elf_getident.c: Likewise.
800 2004-04-01 Ulrich Drepper <drepper@redhat.com>
802 * elf.h: Update from glibc.
804 2004-01-23 Ulrich Drepper <drepper@redhat.com>
806 * elf_update.c: Fix locking.
807 * elf_clone.c: Likewise.
809 * libelf.h: Define ELF_T_LIB.
810 * gelf_getlib.c: New file.
811 * gelf_update_lib.c: New file.
812 * gelf.h: Declare the new functions. Define GElf_Lib.
813 * abstract.h: Define Lib, Lib32, Lib64.
814 * gelf_xlate.c (__elf_xfctstom): Add ELF_T_LIB entry.
815 * gelf_xlate.h: Add entry for ElfXX_Lib.
816 * elf_getdata.c: Recognize SHT_GNU_LIBLIST as a known section type.
817 * libelf.map: Add new symbols to ELFUTILS_1.1.
818 * Makefile.am (libelf_a_SOURCES): Add gelf_getlib.c and
821 2004-01-17 Ulrich Drepper <drepper@redhat.com>
823 * Makefile.am: Support building with mudflap.
825 * gelf_xlate.c (INLINE3): Avoid using cast as lvalue.
826 * dl-hash.h (_dl_elf_hash): Likewise.
828 2004-01-05 Ulrich Drepper <drepper@redhat.com>
830 * elf-knowledge.h: New file. From libelf subdir.
831 * Makefile.am (euincludedir): Define.
832 (euinclude_HEADERS): Add elf-knowledge.h.
834 2003-09-24 Ulrich Drepper <drepper@redhat.com>
836 * elf.h: Define some PT_IA_64_HP_* constants.
838 2003-09-23 Jakub Jelinek <jakub@redhat.com>
840 * libelfP.h (struct Elf): Move state.elf64.sizestr_offset after
841 state.elf64.scnincr to match state.elf{,32}.
843 2003-08-12 Ulrich Drepper <drepper@redhat.com>
845 * elf32_updatefile.c (__updatemmap): When writing back file where
846 some sections have not been read in, count their sizes based on
849 2003-08-11 Ulrich Drepper <drepper@redhat.com>
851 * Moved to CVS archive.