1 2011-01-05 Jan Kratochvil <jan.kratochvil (a] redhat.com> 2 3 * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Fix off64_t overflow 4 when MAXIMUM_SIZE == ~0. 5 6 2010-08-18 Roland McGrath <roland (a] redhat.com> 7 8 * gelf_fsize.c (__libelf_type_sizes): Add entries for ELF_T_LIB 9 and ELF_T_GNUHASH. 10 Reported by Mark Hatle <mark.hatle (a] windriver.com>. 11 12 * exttypes.h: Add cases for ElfNN_Lib. 13 Reported by Mark Hatle <mark.hatle (a] windriver.com>. 14 15 2010-06-14 Ulrich Drepper <drepper (a] redhat.com> 16 17 * gelf_update_shdr.c: Implicitly set ELF_F_DIRTY bit. 18 * gelf_update_phdr.c: Likewise. 19 * gelf_update_ehdr.c: Likewise. 20 21 2010-04-14 Roland McGrath <roland (a] redhat.com> 22 23 * elf32_getphdr.c: Check for e_phoff/size outside the file bounds. 24 * elf_begin.c (file_read_elf): Don't set .phdr here. 25 26 2010-04-13 Roland McGrath <roland (a] redhat.com> 27 28 * elf.h: Update from glibc. 29 30 2010-04-06 Roland McGrath <roland (a] redhat.com> 31 32 * elf_error.c (ELF_E_FD_MISMATCH_IDX): Avoid nonobvious abbreviation 33 in error message. 34 35 2010-04-01 Petr Machata <pmachata (a] redhat.com> 36 37 * elf_getdata.c (__elf_getdata_rdlock): Initialize data.s for data 38 that do not need a conversion. 39 40 2010-03-11 Roland McGrath <roland (a] redhat.com> 41 42 * elf.h: Update from glibc. 43 44 2010-03-04 Ulrich Drepper <drepper (a] redhat.com> 45 46 * elf.h: Update from glibc. 47 48 2010-02-17 Roland McGrath <roland (a] redhat.com> 49 50 * elf_begin.c (file_read_elf): Leave section rawdata_base and 51 data_base pointers null when [sh_offset,sh_size) points outside 52 the mapped file. 53 54 2010-02-15 Roland McGrath <roland (a] redhat.com> 55 56 * Makefile.am: Use config/eu.am for common stuff. 57 58 2010-01-07 Roland McGrath <roland (a] redhat.com> 59 60 * elf32_getphdr.c: Use __elf_getphdrnum_rdlock. 61 * gelf_getphdr.c: Likewise. 62 * gelf_update_phdr.c: Likewise. 63 * elf32_updatefile.c (__elf32_updatemmap, __elf32_updatefile): Likewise. 64 * elf32_updatenull.c (__elf32_updatenull_wrlock): Likewise. 65 * elf32_newphdr.c: Clear section 0's sh_info when resetting e_phnum. 66 If COUNT is too large, use store PN_XNUM instead and set sh_info. 67 * elf_begin.c (file_read_elf): Always allocate space we can use later 68 for section 0 if doing RDWR. 69 70 * elf_getphdrnum.c: New file. 71 * Makefile.am (libelf_a_SOURCES): Add it. 72 * libelf.h: Declare elf_getphdrnum. 73 * libelfP.h: Declare __elf_getphdrnum_rdlock. 74 * libelf.map (ELFUTILS_1.6): New set, add elf_getphdrnum. 75 76 * elf.h: Update from glibc. 77 78 2009-10-23 Lubomir Rintel <lkundrak (a] v3.sk> 79 80 * elf32_updatefile.c (fill_mmap): When starting past shdr_end, start 81 filling from section start, not shdr_end. 82 83 2009-11-10 Roland McGrath <roland (a] redhat.com> 84 85 * elf_readall.c (__libelf_readall): Fetch file size if not yet known. 86 87 2009-11-06 Mark Wielaard <mjw (a] redhat.com> 88 89 * elf_next.c (elf_next): Mark the archive header as unusable when 90 there is no next ar element. 91 92 2009-08-12 Mark Wielaard <mjw (a] redhat.com> 93 94 * Makefile.am (libelf.so): Use -Wl,-z,defs not -defs. 95 96 2009-07-26 Ulrich Drepper <drepper (a] redhat.com> 97 98 * elf.h: Update from glibc. 99 100 2009-07-21 Ulrich Drepper <drepper (a] redhat.com> 101 102 * elf32_updatefile.c (__elfXX_updatemmap): Fix handling of gaps between 103 sections. Patch by Lubomir Rintel <lkundrak (a] v3.sk>. 104 105 2009-07-08 Roland McGrath <roland (a] redhat.com> 106 107 * libelfP.h (struct Elf): Remove unused ar.has_index field. 108 Reorder various members for optimal packing. 109 110 2009-07-08 Ulrich Drepper <drepper (a] redhat.com> 111 112 * elf.h: Update from glibc. 113 114 2009-06-13 Ulrich Drepper <drepper (a] redhat.com> 115 116 * Makefile.am (libelf_a_SOURCES): Replace elf_getshnum.c and 117 elf_getshstrndx.c with elf_getshdrnum.c and elf_getshdrstrndx.c. 118 * elf_getshnum.c: Renamed to... 119 * elf_getshdrnum.c: ...this. Rename function and add old name as 120 alias. Likewise for internal functions with derived names. 121 * elf_getshstrndx.c: Renamed to... 122 * elf_getshdrstrndx.c: ...this. Rename function and add old name as 123 alias. Likewise for internal functions with derived names. 124 * libelf.h: Add prototypes for new names. Make old names as 125 deprecated. 126 * libelfP.h: Rename internal function prototypes. 127 * libelf.map: Export for names. 128 * elf32_checksum.c: Don't use deprecated functions. 129 * elf32_getshdr.c: Likewise. 130 131 2009-06-01 Ulrich Drepper <drepper (a] redhat.com> 132 133 * elf.h: Update from glibc. 134 135 2009-04-14 Roland McGrath <roland (a] redhat.com> 136 137 * elf.h: Update from glibc. 138 139 2009-04-01 Roland McGrath <roland (a] redhat.com> 140 141 * elf.h: Update from glibc. 142 143 2009-02-10 Ulrich Drepper <drepper (a] redhat.com> 144 145 * elf32_updatefile.c (updatefile): For the zeroth section we still 146 have to copy the section header. 147 148 2009-02-01 Ulrich Drepper <drepper (a] redhat.com> 149 150 * elf_strptr.c: Add comment re possible problem. 151 152 2009-01-26 Ulrich Drepper <drepper (a] redhat.com> 153 154 * elf32_updatenull.c (updatenull_wrlock): Fix comment of 155 ELF_F_LAYOUT behaviour re section header table. 156 157 2009-01-22 Ulrich Drepper <drepper (a] redhat.com> 158 159 * elf32_updatefile.c (__elfXX_updatemmap): Fill the gap between 160 sections even if only the section at the start of the gap has been 161 changed. 162 (__elfXX_updatefile): Likewise. 163 164 2009-01-21 Ulrich Drepper <drepper (a] redhat.com> 165 166 * elf32_updatefile.c (__elfXX_updatemmap): Skip most of the loop to 167 handle sections for NOBITS sections. 168 (elfXX_updatefile): Likewise. 169 170 * elf32_updatefile.c (__elfXX_updatemmap): When skipping non-NOBITS 171 sections we haven't loaded, update last_position based on scn_start, 172 not based on old value. Don't run the loop for the dummy section 0. 173 (elfXX_updatefile): Don't run the loop for the dummy section 0. 174 175 2009-01-10 Ulrich Drepper <drepper (a] redhat.com> 176 177 * libelfP.h (_): We only have one translation domain, elfutils. 178 179 * Makefile.am: Use USE_LOCKS instead of USE_TLS. 180 * elf_error.c: Always use __thread. Remove all !USE_TLS code. 181 182 2009-01-04 Roland McGrath <roland (a] redhat.com> 183 184 * note_xlate.h (elf_cvt_note): Don't examine a size too small to 185 container a note header. 186 187 2008-12-11 Roland McGrath <roland (a] redhat.com> 188 189 * elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Handle 190 placement offset going backwards, for out-of-order or overlapping 191 (bogus) sh_offset layouts. It's a dumb use, but should not crash. 192 (__elfw2(LIBELFBITS,updatefile)): Likewise. 193 Fixes RHBZ#476136. 194 195 * libelf.h (Elf_Data): Whitespace fix. 196 197 2008-12-10 Roland McGrath <roland (a] redhat.com> 198 199 * elf_getarhdr.c (elf_getarhdr): Fix missing rename in last change. 200 201 2008-10-22 Petr Machata <pmachata (a] redhat.com> 202 203 * elf_rawfile.c (elf_rawfile): Lock around elf-> references. 204 205 2008-10-21 Petr Machata <pmachata (a] redhat.com> 206 207 * libelfP.h: Rename getehdr_rdlock to getehdr_wrlock. 208 * elf32_getehdr.c (getehdr_rdlock): Move the code to new function 209 getehdr_impl and make it a wrapper. Rename to getehdr_wrlock. 210 (getehdr_impl): Guard elf->class init with wrlock. 211 (getehdr): Also make it a wrapper of getehdr_impl. 212 * elf32_updatenull.c (updatenull_wrlock): Call getehdr_wrlock. 213 214 2008-10-20 Petr Machata <pmachata (a] redhat.com> 215 216 * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Lock around the 217 code that reads mutable elf state. Relock to write lock to chain 218 the new chunk on the elf rawchunks list. 219 220 2008-10-20 Petr Machata <pmachata (a] redhat.com> 221 222 * elf32_checksum.c (checksum): Place a lock around the code that 223 processes data. Make it wrlock if the code needs to xlate the 224 data before processing. 225 226 2008-10-16 Petr Machata <pmachata (a] redhat.com> 227 228 * elf_begin.c 229 (__libelf_next_arhdr): Rename to __libelf_next_arhdr_wrlock. 230 (dup_elf): Adjust the call. 231 (elf_begin): New local function lock_dup_elf. Relocks the elf if 232 necessary before calling dup. Call this instead of dup_elf. 233 * elf_getarhdr.c 234 (elf_getarhdr): Lock before calling __libelf_next_arhdr_wrlock. 235 * elf_next.c (elf_next): Likewise. 236 * elf_rand.c (elf_rand): Likewise. 237 238 2008-10-14 Petr Machata <pmachata (a] redhat.com> 239 240 * elf_getdata.c (__elf_getdata_rdlock): Lock before converting. 241 242 2008-11-26 Roland McGrath <roland (a] redhat.com> 243 244 * elf.h: Update from glibc. 245 246 2008-10-06 Roland McGrath <roland (a] redhat.com> 247 248 * elf_getarhdr.c (elf_getarhdr): Return NULL when passed NULL. 249 250 2008-08-27 Roland McGrath <roland (a] redhat.com> 251 252 * elf_begin.c (get_shnum): Avoid misaligned reads for matching endian. 253 254 * libelfP.h [!ALLOW_UNALIGNED] (__libelf_type_align): Fix CLASS index. 255 256 2008-08-25 Roland McGrath <roland (a] redhat.com> 257 258 * Makefile.am (libelf_so_LDLIBS): New variable. 259 (libelf.so): Use it in the link. 260 261 2008-08-21 Petr Machata <pmachata (a] redhat.com> 262 263 * elf_getdata.c, libelfP.h 264 (__elf_getdata_internal): Rename to __elf_getdata_rdlock. 265 (__libelf_set_rawdata_wrlock): New function. 266 (__libelf_set_rawdata): Make it a wrapper that calls *_wrlock. 267 * elf32_updatenull.c, libelfP.h 268 (__elfNN_updatenull): Rename to __elfNN_updatenull_wrlock. 269 270 2008-08-21 Petr Machata <pmachata (a] redhat.com> 271 272 * elf32_getphdr.c, libelfP.h 273 (__elfNN_getphdr_internal): Drop. Move __elfNN_getphdr_internal 274 code to __elfNN_getphdr_wrlock. 275 (__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): New functions. 276 (__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): Make these 277 wrappers of getphdr_impl. 278 279 2008-08-21 Petr Machata <pmachata (a] redhat.com> 280 281 * elf32_getehdr.c, libelfP.h 282 (__elfNN_getehdr_internal): Rename to __elfNN_getehdr_rdlock. 283 * gelf_getehdr, libelfP.h: 284 (__gelf_getehdr_internal): Rename to __gelf_getehdr_rdlock. 285 286 2008-08-21 Petr Machata <pmachata (a] redhat.com> 287 288 * elf32_getshdr.c 289 (__elfNN_getshdr_internal): Drop. 290 (load_shdr_wrlock, scn_valid): New functions, contain bits of 291 behaviour from __elfNN_getshdr_internal. 292 (__elfNN_getshdr_rdlock, __elfNN_getshdr_wrlock): Replacements for 293 dropped _internal functions above. 294 * elf_getshnum.c 295 (__elf_getshnum_internal): Rename to __elf_getshnum_rdlock. 296 297 2008-08-04 Petr Machata <pmachata (a] redhat.com> 298 299 * libelfP.h (RWLOCK_RDLOCK, RWLOCK_WRLOCK, RWLOCK_UNLOCK): New macros. 300 301 2008-07-28 Roland McGrath <roland (a] redhat.com> 302 303 * elf.h: Update from glibc. 304 305 2008-03-31 Roland McGrath <roland (a] redhat.com> 306 307 * elf32_offscn.c: Make sure shdrs have been read in. 308 309 2008-02-19 Roland McGrath <roland (a] redhat.com> 310 311 * elf.h: Update from glibc. 312 313 2008-02-08 Roland McGrath <roland (a] redhat.com> 314 315 * elf.h: Update from glibc. 316 317 2008-01-31 Ulrich Drepper <drepper (a] redhat.com> 318 319 * elf_strptr.c (elf_strptr): Don't fail if the ELF file is currently 320 under construction and no raw data can be read from disk. 321 322 2008-01-30 Roland McGrath <roland (a] redhat.com> 323 324 * elf.h: Update from glibc. 325 326 2008-01-26 Roland McGrath <roland (a] redhat.com> 327 328 * elf_begin.c (__libelf_next_arhdr): Rewrite conversions using a macro. 329 Fixes various pastos in wrong type in sizeof, wrong string parsed. 330 331 2008-01-20 Roland McGrath <roland (a] redhat.com> 332 333 * elf_getaroff.c: Calculate from start_offset, instead of using 334 parent's state.ar.offset field. 335 336 2008-01-08 Roland McGrath <roland (a] redhat.com> 337 338 * Makefile.am (euinclude): Variable removed. 339 (pkginclude_HEADERS): Set this instead of euinclude_HEADERS. 340 341 2008-01-03 Roland McGrath <roland (a] redhat.com> 342 343 * common.h: Add __attribute__ ((unused)) to static functions. 344 345 2007-12-20 Ulrich Drepper <drepper (a] redhat.com> 346 347 * Makefile.am (libelf_a_SOURCES): Add elf_scnshndx. 348 * libelfP.h (struct Elf_Scn): Add shndx_index field. 349 Declare __elf_scnshndx_internal. 350 * elf32_getshdr.c: Record location of extended section header. 351 * elf_begin.c (file_read_elf): Likewise. 352 * elf_scnshndx.c: New file. 353 * libelf.h: Declare elf_scnshndx. 354 * libelf.map: Add elf_scnshndx to version ELFUTILS_1.4. 355 356 2007-11-12 Roland McGrath <roland (a] redhat.com> 357 358 * libelf.h: Replace off64_t with loff_t throughout. 359 Only that type name is unconditionally defined by <sys/types.h> 360 361 2007-11-03 Roland McGrath <roland (a] redhat.com> 362 363 * libelf.h (Elf_Data): Comment fix. 364 365 2007-10-18 Roland McGrath <roland (a] redhat.com> 366 367 * elf.h: Update from glibc. 368 369 2007-10-07 Roland McGrath <roland (a] redhat.com> 370 371 * elf_begin.c (__libelf_next_arhdr): Fix fencepost error and wrong 372 member access in terminating name with no trailing /. Trim trailing 373 spaces when there is no /. 374 375 2007-10-04 Roland McGrath <roland (a] redhat.com> 376 377 * elf_end.c (elf_end): Don't free ELF->state.ar.ar_sym when it's -1l. 378 379 2007-10-03 Roland McGrath <roland (a] redhat.com> 380 381 * libelf.h (Elf_Data): Use off64_t for d_off. 382 (Elf_Arhdr): Use off64_t for ar_size. 383 (elf_update, elf_getbase, elf_getaroff): Return off64_t. 384 385 * gelf_rawchunk.c: File removed. 386 * gelf_freechunk.c: File removed. 387 * Makefile.am (libelf_a_SOURCES): Remove them. 388 * libelf.map (ELFUTILS_1.0): Remove exports. 389 * gelf.h: Remove decls. 390 391 * elf_getdata_rawchunk.c: New file. 392 * Makefile.am (libelf_a_SOURCES): Add it. 393 * libelf.map (ELFUTILS_1.3): Add elf_getdata_rawchunk. 394 * libelf.h: Declare it. 395 * libelfP.h (Elf_Data_Chunk): New type. 396 (struct Elf.elf): New member `rawchunks'. 397 * elf_end.c (elf_end): Free recorded rawchunk buffers. 398 399 2007-08-24 Roland McGrath <roland (a] redhat.com> 400 401 * gelf_getnote.c: New file. 402 * Makefile.am (libelf_a_SOURCES): Add it. 403 * gelf.h: Declare gelf_getnote. 404 * libelf.map (ELFUTILS_1.3): Add gelf_getnote. 405 406 * libelfP.h (NOTE_ALIGN): New macro. 407 * note_xlate.h: New file. 408 * Makefile.am (noinst_HEADERS): Add it. 409 * gelf_xlate.c: Include it. 410 (__elf_xfctstom): Use elf_cvt_note. 411 * elf_getdata.c (shtype_map, __libelf_type_align): Handle SHT_NOTE. 412 (__libelf_set_rawdata): Likewise. 413 414 2007-08-19 Roland McGrath <roland (a] redhat.com> 415 416 * gelf_update_auxv.c: New file. 417 * gelf_getauxv.c: New file. 418 * Makefile.am (libelf_a_SOURCES): Add them. 419 * gelf.h: Declare gelf_getauxv, gelf_update_auxv. 420 * libelf.map (ELFUTILS_1.3): New set, inherits fom ELFUTILS_1.2. 421 Export gelf_getauxv, gelf_update_auxv. 422 423 * libelf.h (Elf_Type): Add ELF_T_AUXV. 424 * abstract.h: Add auxv_t entries. 425 * exttypes.h: Likewise. 426 * gelf_xlate.h: Likewise. 427 * gelf_xlate.c (__elf_xfctstom): Add ELF_T_AUXV entries. 428 * gelf_fsize.c (__libelf_type_sizes): Likewise. 429 430 2007-08-12 Roland McGrath <roland (a] redhat.com> 431 432 * elf32_updatefile.c (compare_sections): Sort secondarily on sh_size, 433 and only tertiarily on index. 434 435 2007-07-09 Roland McGrath <roland (a] redhat.com> 436 437 * elf.h: Update from glibc. 438 439 2007-04-22 Roland McGrath <roland (a] redhat.com> 440 441 * elf.h: Update from glibc. 442 443 2007-03-18 Roland McGrath <roland (a] redhat.com> 444 445 * elf_begin.c (get_shnum): Fix test for e_shoff being out of bounds. 446 Return zero when the section headers do not fit within MAXSIZE. 447 448 2007-03-09 Roland McGrath <roland (a] redhat.com> 449 450 * libelfP.h (LIBELF_EV_IDX): New macro. 451 (__libelf_type_align): New macro. 452 [! ALLOW_UNALIGNED]: Declare __libc_type_aligns array. 453 * elf_getdata.c (shtype_map): Convert to just Elf_Type[][]. 454 (convert_data, __libelf_set_rawdata): Use that, __libelf_type_align, 455 and __libelf_type_sizes, in place of old table. 456 (__libc_type_aligns): New const variable. 457 458 2007-02-04 Ulrich Drepper <drepper (a] redhat.com> 459 460 * Makefile (libelf.so): Build with -z relro. 461 462 * elf_begin.c (read_file): When using ELF_C_READ_MMAP use MAP_PRIVATE. 463 464 2007-01-30 Ulrich Drepper <drepper (a] redhat.com> 465 466 * nlist.c: Close file descriptor before returning. 467 468 2007-01-20 Roland McGrath <roland (a] redhat.com> 469 470 * gnuhash_xlate.h (elf_cvt_gnuhash): Fix fence-post error so we 471 convert the final word. 472 473 * elf32_getshdr.c: Don't byteswap shdr fields when EI_DATA matches 474 MY_ELFDATA on !ALLOW_UNALIGNED machines. 475 476 2007-01-18 Roland McGrath <roland (a] redhat.com> 477 478 * gelf_rawchunk.c (gelf_rawchunk): Clear RESULT pointer after freeing 479 it on read error. 480 481 2006-10-13 Roland McGrath <roland (a] redhat.com> 482 483 * elf32_updatenull.c: Look for and accept phdr also for ET_CORE. 484 * elf_error.c (msgstr): Change ELF_E_INVALID_PHDR string. 485 486 2006-08-29 Roland McGrath <roland (a] redhat.com> 487 488 * elf32_getphdr.c: Don't byteswap phdr fields when EI_DATA matches 489 MY_ELFDATA on !ALLOW_UNALIGNED machines. 490 Reported by Christian Aichinger <Greek0 (a] gmx.net>. 491 492 * Makefile.am (CLEANFILES): Add libelf.so.$(VERSION). 493 494 2006-08-08 Ulrich Drepper <drepper (a] redhat.com> 495 496 * elf.h (DT_VALNUM): Update. 497 (DT_ADDRNUM): Likewise. 498 499 2006-07-12 Ulrich Drepper <drepper (a] redhat.com> 500 501 * elf32_updatefile.c: Adjust for internal_function_def removal. 502 * elf32_updatenull.c: Likewise. 503 * elf_begin.c: Likewise. 504 * elf_getdata.c: Likewise. 505 506 2006-07-11 Ulrich Drepper <drepper (a] redhat.com> 507 508 * libelf.h: Define ELF_T_GNUHASH. 509 * elf_getdata.c (TYPEIDX): Handle SHT_GNU_HASH. 510 (shtype_map): Add SHT_GNU_HASH entries. 511 * gelf_xlate.c (__elf_xfctstom): Add ELF_T_GNUHASH entries. 512 * gnuhash_xlate.h: New file. 513 * Makefile.am (noinst_HEADERS): Add gnuhash_xlate.h. 514 515 2006-07-06 Ulrich Drepper <drepper (a] redhat.com> 516 517 * elf_gnu_hash.c: New file. 518 * libelf.h: Declare elf_gnu_hash. 519 * Makefile.am (libelf_a_SOURCES): Add elf_gnu_hash. 520 * libelf.map: Add elf_gnu_map for version ELFUTILS_1.2. 521 522 2006-06-15 Roland McGrath <roland (a] redhat.com> 523 524 * libelf.h (elf_getarsym): Fix comment typo. 525 Rename second parameter to be more explanatory. 526 (elf_getident, elf_rawhide): Likewise. 527 528 2006-05-28 Ulrich Drepper <drepper (a] redhat.com> 529 530 * elf32_updatefile.c (updatemmap): Preserve section content if 531 copying would overwrite them. 532 Fix msync paramters. 533 534 2006-04-04 Roland McGrath <roland (a] redhat.com> 535 536 * elf32_updatefile.c (updatemmap): Handle other-endian case. 537 538 2006-04-04 Ulrich Drepper <drepper (a] redhat.com> 539 540 * elf32_updatefile.c (updatemmap): Cleanups. Remove shdr_dest 541 variable. Before writing sections, make a copy of the section 542 header data if necessary. Don't write section header while 543 writing the section constent, it might overwrite some sections. 544 Restore the pointer afterwards. 545 * elf32_updatenull.c (updatenull): If the offset of a section in a 546 file changed make sure we read the section so that it'll be written 547 out. 548 549 * elf_update.c: Remove debug message. 550 551 2005-12-07 Roland McGrath <roland (a] redhat.com> 552 553 * gelf_xlate.c [! ALLOW_UNALIGNED] (union unaligned): New type. 554 (FETCH, STORE): New macros. 555 (INLINE3): Use those to do alignment-friendly conversion. 556 557 * elf32_getshdr.c: Include map_address and start_offset in alignment 558 calculations. 559 * elf32_getphdr.c: Likewise. 560 561 2005-11-19 Roland McGrath <roland (a] redhat.com> 562 563 * elf.h: Update from glibc. 564 565 2005-11-17 Roland McGrath <roland (a] redhat.com> 566 567 * elf.h: Update from glibc. 568 569 2005-11-10 Roland McGrath <roland (a] redhat.com> 570 571 * elf.h: Update from glibc. 572 573 2005-09-09 Roland McGrath <roland (a] redhat.com> 574 575 * elf_update.c (write_file): Stat the file and fchmod it after update 576 if its mode had S_ISUID or S_ISGID bits set. 577 578 2005-08-28 Ulrich Drepper <drepper (a] redhat.com> 579 580 * elf32_getphdr.c: Include <system.h>. Use pread_retry instead of 581 pread. And branch prediction where useful. 582 * elf_begin.c: Likewise. 583 * elf_getdata.c: Likewise. 584 * elf_getshstrndx.c: Likewise. 585 * elf_readall.c: Likewise. 586 * gelf_rawchunk.c: Likewise. 587 * elf32_updatefile.c: Include <system.h>. Use pread_retry instead of 588 pread. And branch prediction where useful. 589 * elf_getarsym.c: Don't define pread_retry here. 590 591 * Makefile.am: Use $(LINK) not $(CC) when creating DSO. 592 (%.os): Use COMPILE.os. 593 (COMPILE.os): Filter out gconv options. 594 595 2005-08-27 Ulrich Drepper <drepper (a] redhat.com> 596 597 * elf_begin.c (file_read_elf): Avoid reading ELF header from file 598 again. Instead accept additional parameter which points to it if we 599 don't use mmap. 600 (get_shnum): Use passed in e_ident value as source of ELF header. 601 602 2005-08-15 Ulrich Drepper <drepper (a] redhat.com> 603 604 * elf_begin.c (__libelf_next_arhdr): Use TEMP_FAILURE_RETRY. 605 606 * Makefile (libelf_a_SOURCES): Add elf_getaroff.c. 607 * libelf.map: Export elf_getaroff. 608 * libelf.h: Declare elf_getaroff. 609 * elf_getaroff.c: New file. 610 611 2005-08-13 Ulrich Drepper <drepper (a] redhat.com> 612 613 * elf_begin.c (get_shnum): Optimize memory handling. Always read from 614 mapped file if available. Fix access to 64-bit sh_size. Recognize 615 overflow. 616 (file_read_elf): Likewise. 617 618 2005-08-12 Roland McGrath <roland (a] redhat.com> 619 620 * elf32_offscn.c: Do not match empty sections at OFFSET unless 621 there are no nonempty sections at that offset. 622 623 2005-08-07 Ulrich Drepper <drepper (a] redhat.com> 624 625 * elf.h: Update from glibc. 626 627 2005-08-06 Ulrich Drepper <drepper (a] redhat.com> 628 629 * Makefile.am (AM_CFLAGS): Add -fpic when BUILD_STATIC. 630 631 2005-08-03 Ulrich Drepper <drepper (a] redhat.com> 632 633 * libelf.map: Move elf32_offscn, elf64_offscn, and gelf_offscn in 634 new version ELFUTILS_1.1.1. 635 636 2005-08-02 Ulrich Drepper <drepper (a] redhat.com> 637 638 * elf_error.c: Add handling of ELF_E_INVALID_OFFSET. 639 * elf32_offscn.c: New file. 640 * elf64_offscn.c: New file. 641 * gelf_offscn.c: New file. 642 * Makefile.am (libelf_a_SOURCES): Add elf32_offscn.c, elf64_offscn.c, 643 and gelf_offscn.c. 644 * libelf.sym: Export new symbols. 645 646 2005-07-23 Ulrich Drepper <drepper (a] redhat.com> 647 648 * elf-knowledge.h (SECTION_STRIP_P): Don't handle removal of debug 649 sections here anymore. 650 * elf32_checksum.c: Adjust for change in SECTION_STRIP_P interface. 651 652 * elf_update.c (elf_update): Get write lock, not read lock. 653 654 * elf32_updatenull.c (updatenull): Get section headers if necessary 655 and possible. 656 657 2005-07-22 Ulrich Drepper <drepper (a] redhat.com> 658 659 * elf32_updatenull.c (updatenull): If program header hasn't been loaded 660 yet, try to do it now. 661 Don't unnecessarily update overflow of section count in zeroth section 662 sh_size field. 663 If section content hasn't been read yet, do it before looking for the 664 block size. If no section data present, infer size of section header. 665 666 2005-05-11 Ulrich Drepper <drepper (a] redhat.com> 667 668 * elf.h: Update again. 669 670 2005-05-09 Ulrich Drepper <drepper (a] redhat.com> 671 672 * elf.h: Update from glibc. 673 674 2005-05-08 Roland McGrath <roland (a] redhat.com> 675 676 * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now. 677 * elf_update.c (write_file) [_MUDFLAP]: Likewise. 678 679 2005-03-29 Ulrich Drepper <drepper (a] redhat.com> 680 681 * elf32_checksum.c: Use INTUSE and INTDEF to avoid PLTs. 682 * elf_end.c: Likewise. 683 * elf_getdata.c: Likewise. 684 * gelf_getehdr.c: Likewise. 685 * nlist.c: Likewise. 686 * libelfP.h: Add declarations of internal functions. 687 688 2005-02-15 Ulrich Drepper <drepper (a] redhat.com> 689 690 * common.h (CONVERT): Make sure all values are unsigned. 691 (CONVERT_TO): Likewise. 692 693 * Makefile.am (AM_CFLAGS): Add -Wformat=2. 694 Fix rule to build libelf.so. 695 696 2005-02-06 Ulrich Drepper <drepper (a] redhat.com> 697 698 * Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra. 699 Remove lint handling. 700 * elf32_getphdr.c: Minor cleanups. 701 * elf32_getshdr.c: Likewise. 702 * elf32_updatefile.c: Likewise. 703 * elf32_updatenull.c: Likewise. 704 * elf_begin.c: Likewise. 705 * elf_error.c: Likewise. 706 * elf_getarsym.c: Likewise. 707 * elf_getdata.c: Likewise. 708 * elf_update.c: Likewise. 709 * gelf_xlate.c: Likewise. 710 711 2005-02-05 Ulrich Drepper <drepper (a] redhat.com> 712 713 * Makefile.am: Check for text relocations in constructed DSO. 714 715 * Makefile.am [MUDFLAP] (AM_CFLAGS): Add -Werror -fpic -fmudflap. 716 717 2005-02-04 Ulrich Drepper <drepper (a] redhat.com> 718 719 * gelf_getehdr.c (gelf_getehdr): Slight optimization. 720 721 * elf32_checksum.c (checksum): Do not look at NOBITS sections. 722 723 * gelf.h: Add gelf_checksum prototype. 724 725 2004-09-25 Ulrich Drepper <drepper (a] redhat.com> 726 727 * elf32_checksum.c: Make compile with gcc 4.0. 728 * elf32_updatefile.c: Likewise. 729 * elf32_updatenull.c: Likewise. 730 * elf_begin.c: Likewise. 731 * elf_error.c: Likewise. 732 * elf_getdata.c: Likewise. 733 * elf_getident.c: Likewise. 734 735 2004-04-01 Ulrich Drepper <drepper (a] redhat.com> 736 737 * elf.h: Update from glibc. 738 739 2004-01-23 Ulrich Drepper <drepper (a] redhat.com> 740 741 * elf_update.c: Fix locking. 742 * elf_clone.c: Likewise. 743 744 * libelf.h: Define ELF_T_LIB. 745 * gelf_getlib.c: New file. 746 * gelf_update_lib.c: New file. 747 * gelf.h: Declare the new functions. Define GElf_Lib. 748 * abstract.h: Define Lib, Lib32, Lib64. 749 * gelf_xlate.c (__elf_xfctstom): Add ELF_T_LIB entry. 750 * gelf_xlate.h: Add entry for ElfXX_Lib. 751 * elf_getdata.c: Recognize SHT_GNU_LIBLIST as a known section type. 752 * libelf.map: Add new symbols to ELFUTILS_1.1. 753 * Makefile.am (libelf_a_SOURCES): Add gelf_getlib.c and 754 gelf_update_lib.c. 755 756 2004-01-17 Ulrich Drepper <drepper (a] redhat.com> 757 758 * Makefile.am: Support building with mudflap. 759 760 * gelf_xlate.c (INLINE3): Avoid using cast as lvalue. 761 * dl-hash.h (_dl_elf_hash): Likewise. 762 763 2004-01-05 Ulrich Drepper <drepper (a] redhat.com> 764 765 * elf-knowledge.h: New file. From libelf subdir. 766 * Makefile.am (euincludedir): Define. 767 (euinclude_HEADERS): Add elf-knowledge.h. 768 769 2003-09-24 Ulrich Drepper <drepper (a] redhat.com> 770 771 * elf.h: Define some PT_IA_64_HP_* constants. 772 773 2003-09-23 Jakub Jelinek <jakub (a] redhat.com> 774 775 * libelfP.h (struct Elf): Move state.elf64.sizestr_offset after 776 state.elf64.scnincr to match state.elf{,32}. 777 778 2003-08-12 Ulrich Drepper <drepper (a] redhat.com> 779 780 * elf32_updatefile.c (__updatemmap): When writing back file where 781 some sections have not been read in, count their sizes based on 782 the section header. 783 784 2003-08-11 Ulrich Drepper <drepper (a] redhat.com> 785 786 * Moved to CVS archive. 787