summaryrefslogtreecommitdiffstats
path: root/contrib/elftoolchain/libelf
Commit message (Collapse)AuthorAgeFilesLines
* MFC r316685: libelf: add an assert that msz is non-zeroemaste2017-05-031-0/+1
| | | | | | Reported by: Coverity CID: 976023 Sponsored by: The FreeBSD Foundation
* MFC libelf: Fix extended numberingemaste2017-05-032-26/+23
| | | | | | | | | | | r310136 (cem): libelf: Fix extended numbering detection Extended numbering is used for any of these fields overflowing. r310137 (cem): gelf_getphdr: Allow extended indices Needed for 'readelf -l' of extended phnum files. (Parity with GNU binutils.)
* MFC r317075: Update ELF Tool Chain to upstream r3520emaste2017-05-012-2/+20
| | | | | | | | | | | | | Highlights of changes between r3490 and r3520: - Improve C++ demangling - Improve compatibility with Binutils tools wrt. error messages - Handle additional types/sections/etc. in readelf and elfdump - addr2line, cxxfilt: use setvbuf to set line buffering for filter use Also MFC r317076, version bump. Sponsored by: The FreeBSD Foundation
* MFC r305130: Update to ELF Tool Chain r3490emaste2016-09-151-4/+1
| | | | | | | | | | | | | Improvements include: * readelf: report all relocation types in rel/rela for MIPS N64 * readelf: add ELFOSABI_ARM_AEABI * elfdump: add ELFOSABI_ARM_AEABI and ELFOSABI_ARM * Add recent RISC-V relocations * elfcopy: use elftc_timestamp, to support SOURCE_DATE_EPOCH MFC r305155: readelf: silence GCC 4.2.1 uninitialized variable warning Sponsored by: The FreeBSD Foundation
* Update to ELF Tool Chain r3475emaste2016-05-204-7/+7
| | | | | | | | | | | | | | | | | | | | | Improvements include: * Add support for reporting and handling a number of new constants in various tools, including: * CloudABI OSABI * DT_TLSDESC_* * i386, MIPS, SPARC and amd64 relocations * C++ demangler bug fixes * Man page updates * Improved input validation in several tools This update also reduces diffs against upstream as a number of fixes included in upstream were previously cherry-picked into FreeBSD. Sponsored by: The FreeBSD Foundation
* libelf: correct byte count in cross-endian note translationemaste2016-03-111-0/+1
| | | | | MFC after: 1 month Sponsored by: The FreeBSD Foundation
* Update ELF Tool Chain to upstream rev 3400emaste2016-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Some notable improvements include: readelf: - Add AArch64 relocation definitions. - Report value of unknown relocation types. elfcopy: - Consider symbols with STB_GNU_UNIQUE binding as global symbols. - Fixed support for VMA adjustment for loadable sections found in relocatable objects. - Handle nameless global symbols. - Improve wildcard matching for !-prefixed symbols. - Add PE/COFF support. elfdump: - Improve section type reporting. - Add MIPS-specific section types. This update also includes a significant number of bug fixes. PR: 207091 [exp-run] Sponsored by: The FreeBSD Foundation
* Add config for RISC-V ISA.br2016-01-241-0/+6
| | | | | | | Reviewed by: emaste Sponsored by: DARPA, AFRL Sponsored by: HEIF5 Differential Revision: https://reviews.freebsd.org/D5046
* Update to ELF Tool Chain r3272emaste2015-12-111-1/+7
| | | | | | | | | | | Highlights (not already in the FreeBSD tree): - addr2line: Speed up and support searching inlined functions - addr2line: Support -i, -a, -p options - readelf: Add some ARM relocation types - readelf, libelf: Avoid reading beyond end of buffer/file Relnotes: Yes Sponsored by: The FreeBSD Foundation
* Update to ELF Tool Chain r3197emaste2015-05-147-17/+17
| | | | | | | | | | Highlights: - Fix man page markup, whitespace, and typos - Fix sh_info of SHT_GROUP section to point to the correct string - Improve validation in readelf and elfcopy/strip - Handle DWARF 4's DW_AT_high_pc in addr2line Sponsored by: The FreeBSD Foundation
* Update elftoolchain to upstream revision 3179emaste2015-04-0152-154/+71
| | | | | | | | | | | | | Some notable changes: - libdwarf: Fixed DWARF4 line section - elfcopy: Implement --localize-hidden - nm: handle object name referenced by DW_AT_specification - elfcopy: Add --strip-dwo and --extract-dwo options for split DWARF - readelf: add remaining arm64 dynamic relocation names - nm: Avoid integer overflow in value comparison Relnotes: Yes Sponsored by: The FreeBSD Foundation
* Update elftoolchain to upstream revision 3163emaste2015-02-175-6/+5
| | | | | | | Most of our changes have now been committed upstream, so this change is largely bookkeeping. Sponsored by: The FreeBSD Foundation
* Verify that section header offset is not past EOFemaste2015-01-161-1/+2
| | | | | MFC After: 1 week Sponsored by: The FreeBSD Foundation
* libelf: Add arm64 configemaste2015-01-071-0/+6
| | | | | | Upstream elftoolchain ticket: #470 Submitted by: Andrew Turner Sponsored by: The FreeBSD Foundation
* libelf: Return an error instead of asserting on an invalid ar fileemaste2015-01-021-1/+2
| | | | | | | | | Upstream elftoolchain ticket 467 http://sourceforge.net/p/elftoolchain/tickets/467/ Reported by: Alexander Cherepanov MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
* libelf: Rearrange size test to prevent integer overflowemaste2014-12-311-1/+1
| | | | Sponsored by: The FreeBSD Foundation
* Check for multiplication integer overflow in CHECK_EHDRemaste2014-12-301-4/+2
| | | | | | | | | | | The initial fix in r276374 is valid only for 64-bit objects. Revert it and return an error in CHECK_EHDR if the multiplication would overflow. The original buffer overflow issue was found with the security/afl fuzzer and has upstream elftoolchain ticket 462. The 32-bit object issue with r276374 found by antoine@ during an i386 exp-run. Sponsored by: The FreeBSD Foundation
* libelf: Do not read past end of bufferemaste2014-12-291-0/+4
| | | | | | | | Previously a corrupt ELF file could read beyond the end of e_rawfile. Upstream elftoolchain ticket 462. Found via the security/afl fuzzer. Sponsored by: The FreeBSD Foundation
* Restore r276252 mdoc fixemaste2014-12-291-1/+0
| | | | | | It was accidentally reverted in the elftoolchain update (r276371). Sponsored by: The FreeBSD Foundation
* Update elftoolchain to upstream rev 3130emaste2014-12-2938-359/+474
|\ | | | | | | | | | | | | | | | | | | | | | | This includes a number of libdwarf improvements (particularly DWARF4 related) and updates to elftoolchain tools such as strip(1). It also includes a large number of miscellaneous fixes (memory leaks, sign and cast warnings, integer overflow and underflow, etc.). This is a merge of r276167,276170-276172 from the projects/elftoolchain-update-r3130 branch. Sponsored by: The FreeBSD Foundation
| * Update elftoolchain to upstream rev 3130emaste2014-12-2435-359/+463
| | | | | | | | | | | | This brings a number of fixes to elfcopy/strip and DWARF4 improvements. Sponsored by: The FreeBSD Foundation
* | mdoc fixesbapt2014-12-261-1/+0
|/
* libelf: Fix cross-endian ELF note file / memory conversionemaste2014-12-021-10/+10
| | | | | | | | | | | | | | The namesz and descsz variables need to be used in native endianness. The sizes are in native order after swapping in the file to memory case, and before swapping in the memory to file case. This issue was identified for r273443, but the change was applied to the wrong case. Revert r273443 to fix the to-memory case, and apply the equivalent change to the to-file case. Sponsored by: DARPA, AFRL Reviewed by: adrian, brooks, marcel Differential Revision: https://reviews.freebsd.org/D1257
* Fix the conversion macro for .note sections, broken in the casemarcel2014-10-221-5/+5
| | | | | | | | | | the ELF file's byte order is not the native byte order. The bug is that the variables holding the name and description size are used (natively) after having been byte-swapped. The fix is to calculate sz from them just prior to byte-swapping. Approved by: jkoshy@ Obtained from: Juniper Networks, Inc.
* GCC for PowerPC does not align .note sections to 4 bytes. Whenmarcel2014-10-221-1/+1
| | | | | | | | running ctfmerge on its objects, libelf asserts as it expects .note sections to be 4-byte aligned. Change that expectation. Approved by: jkoshy@ Obtained from: Juniper Networks, Inc.
* Reapply r221569, r233401, r233524 and r255105: Add support for a fewkaiw2014-01-251-0/+11
| | | | ARM/MIPS ELF section types in _libelf_xlate_shtype().
* Apply r241720 by ed:kaiw2014-01-181-1/+1
| | | | Fix warnings found by -Wmising-variable-declarations.
* Use FreeBSD's ELF headers instead of the elfdefinitions.h header whichkaiw2014-01-161-2/+2
| | | | | | comes with elftoolchain. This version of libelf doesn't need to be portable; using FreeBSD's own ELF headers will avoid conflicts and make integration easier.
* Copy libelf, libdwarf and common files from vendor/ to contrib/.kaiw2014-01-15116-0/+16999
OpenPOWER on IntegriCloud