Commit Graph

  • b4b2de9f1f libdw: Robustify eh_frame_hdr and encoded-values reading. Mark Wielaard 2015-01-07 23:39:28 +01:00
  • 975a37d11d libdwfl: Handle seeing CU EOF marker without any other (real) CU. Mark Wielaard 2015-01-05 00:12:53 +01:00
  • 43e924ee0b libdw: Check DW_AT_sibling attribute offset is after current DIE. Mark Wielaard 2015-01-05 00:03:03 +01:00
  • a1ea2423c0 libdw: Check register number in CFI isn't insanely large. Mark Wielaard 2015-01-04 16:08:22 +01:00
  • e16e14100f elfcmp: Add some NULL and zero checks. Mark Wielaard 2015-01-04 00:35:25 +01:00
  • 9ceebe690f libdw: Add missing size check to parse_eh_frame_hdr. Mark Wielaard 2015-01-03 00:27:58 +01:00
  • 5316e412a4 libdw: Handle NULL dbg for call_ref, GNU_implicit_pointer and addr DW_OPs. Mark Wielaard 2015-01-03 00:09:45 +01:00
  • cc62e378c2 libelf: gelf_getphdr should check phdr index is valid. Mark Wielaard 2014-12-31 00:51:45 +01:00
  • d973206f71 backends: Check sh_entsize is not zero in ppc_symbol.c (find_dyn_got). Mark Wielaard 2014-12-31 00:40:02 +01:00
  • 0a545e678f elflint: Add various low-level checks. Mark Wielaard 2014-12-29 00:53:27 +01:00
  • 47efc3bef9 tests: Add testfile-debug-types test case. Mark Wielaard 2015-01-14 21:38:16 +01:00
  • 7c71382294 libdw: fix offset for sig8 lookup in dwarf_formref_die Jason P. Leasure 2015-01-14 09:26:55 -05:00
  • 3fa1796a55 libdw: Check sibling attribute offset still falls inside CU data. Mark Wielaard 2014-12-27 12:13:50 +01:00
  • 555fdae16c strings: Produce error when section data falls outside file. Mark Wielaard 2014-12-26 22:57:00 +01:00
  • 309e712fea nm: Guard against divide by zero in error check. Mark Wielaard 2014-12-26 19:36:31 +01:00
  • 8fb260f713 nm: Handle/Skip /SYM64/ index entries. Mark Wielaard 2014-12-26 16:20:39 +01:00
  • 0b799ad982 nm: Stop processing ar members on first invalid offset. Mark Wielaard 2014-12-26 16:12:52 +01:00
  • 68588d628a libelf: ar_size cannot be negative. Fix max ar size. Mark Wielaard 2014-12-25 22:50:21 +01:00
  • 8f2f5801a1 readelf: Don't try to read macinfo cus sentinel or beyond. Mark Wielaard 2014-12-21 23:02:12 +01:00
  • cda1a31d0e readelf: Add more sanity checks to print_debug_exception_table. Mark Wielaard 2014-12-21 22:55:54 +01:00
  • daf278fda6 libdw: Prevent infinite recursion when processing DW_TAG_imported_unit. Mark Wielaard 2015-01-11 15:00:52 +01:00
  • 147018e729 libelf: Fix dir traversal vuln in ar extraction. Alexander Cherepanov 2014-12-28 19:57:19 +03:00
  • 3943a38936 tests: Don't match libfunc symbol on ppc64 in run-deleted.sh testcase. Mark Wielaard 2014-12-19 20:53:22 +01:00
  • 7152afac3a tests: vdsosyms should not fail for architectures that don't have a vdso. Mark Wielaard 2014-12-19 18:54:04 +01:00
  • cdfc853b40 tests: run-deleted.sh should SKIP if arch doesn't support unwinding. Mark Wielaard 2014-12-19 18:33:52 +01:00
  • 544d008acd libdwfl: Always try find_dynsym last, also on find_symtab ELF errors. Mark Wielaard 2014-12-19 18:19:29 +01:00
  • 32b6c6aa60 libdwfl: Remove p_align sanity check from elf_from_memory. Mark Wielaard 2014-12-19 15:40:16 +01:00
  • 898ed26144 avoid scary command output Ulrich Drepper 2014-12-18 12:32:39 -05:00
  • 09dc83d67f Prepare 0.161 release. Mark Wielaard 2014-12-18 23:41:41 +01:00
  • e80d32481b tests: Add testfile-macros-0xff.bz2 to EXTRA_DIST. Mark Wielaard 2014-12-18 23:07:12 +01:00
  • b290f47f2c libdwfl: Make sure symstrdata->d_buf != NULL in relocate resolve_symbol. Mark Wielaard 2014-12-18 09:28:50 +01:00
  • 99a6f22a39 readelf: Add bounds check before each CFA op that takes an argument. Mark Wielaard 2014-12-17 15:07:49 +01:00
  • ecd78d3b43 libdw: Check diridx is valid under DW_LNE_define_file in dwarf_getsrclines. Mark Wielaard 2014-12-16 22:47:39 +01:00
  • 322709393b readelf: Print dwarf_errmsg if dwarf_onesrcline or dwarf_linesrc fails. Mark Wielaard 2014-12-16 22:19:08 +01:00
  • 55f847d63a libelf: Make sure ar archive long_names len fits in mapped ELF file. Mark Wielaard 2014-12-16 20:05:58 +01:00
  • 4bb122a876 libelf: Check index_size doesn't overflow in elf_getarsym. Mark Wielaard 2014-12-16 19:43:21 +01:00
  • 7f9ea70d2b libdw: Make sure there is enough space to read offset in dwarf_getpubnames. Mark Wielaard 2014-12-16 16:41:19 +01:00
  • acb5069988 readelf: Correct overflow check for length in print_debug_aranges_section. Mark Wielaard 2014-12-16 16:30:59 +01:00
  • ff1ce97525 readelf,libdw: Correct .debug_line overflow check for unit_length. Mark Wielaard 2014-12-16 16:10:28 +01:00
  • 6a8a9e3d27 readelf: Warn, don't assert, if loclist or rangelist offset is too big. Mark Wielaard 2014-12-15 19:43:02 +01:00
  • 198e9490de readelf: Don't assert when addr_size or ref_size is not 4 or 8 in print_ops. Mark Wielaard 2014-12-15 19:05:43 +01:00
  • 138a9ba2be libdw: dwarf_getpubnames set error to DWARF_E_NO_ENTRY for zero entries. Mark Wielaard 2014-12-15 16:56:49 +01:00
  • 2323b45d4e readelf: Add more bounds checks to print_gdb_index_section. Mark Wielaard 2014-12-15 15:34:59 +01:00
  • 3864804113 libdw: Add bounds checking to dwarf_getpubnames. Mark Wielaard 2014-12-15 14:56:07 +01:00
  • 9c42b782eb readelf: Make sure there is enough room for reading .debug_line unit_length. Mark Wielaard 2014-12-15 13:40:18 +01:00
  • b171ca4f13 readelf: Check there is enough room for the DW_LNE_set_address argument Mark Wielaard 2014-12-15 11:35:46 +01:00
  • 9520242b2a libelf: Clear any garbage left in the ar name table. Mark Wielaard 2014-12-15 11:17:33 +01:00
  • 1b5477ddf3 libdw: Unroll the first get_sleb128 step to help the compiler optimize. Mark Wielaard 2014-12-16 10:53:22 +01:00
  • 54662f13d1 libdw: pre-compute leb128 loop limits Josh Stone 2014-12-15 12:18:25 -08:00
  • 7a053473c7 libdw: Add get_uleb128 and get_sleb128 bounds checking. Mark Wielaard 2014-12-14 21:48:23 +01:00
  • 9202665816 libdw: Make sure all attributes come with a (fake) CU for bound checks. Mark Wielaard 2014-12-12 16:43:04 +01:00
  • 274cbda6f5 elfcmp: Make sure Elf32_Word difference doesn't wrap around in int compare. Mark Wielaard 2014-12-16 11:04:55 +01:00
  • c8a0273dd5 libdwfl: Make sure elf_getdata_rawchunk size_t doesn't overflow find_dynsym. Mark Wielaard 2014-12-13 22:23:45 +01:00
  • f73385ef95 libdw: Make sure end of next cu doesn't overflow section data size. Mark Wielaard 2014-12-12 00:22:31 +01:00
  • 4a330f6279 Guard against 64bit unsigned wrap around in (int) compare functions. Mark Wielaard 2014-12-14 00:09:29 +01:00
  • f5c340b174 Add config/compile as installed by automake 1.14 Josh Stone 2014-12-15 11:05:11 -08:00
  • ee5693b9db readelf: Check TType base offset and Action table are sane in exception table. Mark Wielaard 2014-12-11 18:26:09 +01:00
  • cd33929347 readelf: Don't print more augmentation characters than there are. Mark Wielaard 2014-12-11 17:21:22 +01:00
  • 65a556fc86 libelf: Correct ELF64 section offset check in file_read_elf. Mark Wielaard 2014-12-11 16:33:30 +01:00
  • 7d63628b8a libelf: Add some ar header sanity checking. Mark Wielaard 2014-12-11 16:28:57 +01:00
  • f3111d5075 tests: Add an explicit -fasynchronous-unwind-tables for deleted-lib.so. Mark Wielaard 2014-12-12 21:51:27 +01:00
  • 080fa4e368 tests: Test addr2line -i with lexical blocks present Josh Stone 2014-12-11 17:19:23 -08:00
  • 7d9b5ac63f libdwfl: Search for the last matching address in lines Josh Stone 2014-12-11 16:23:46 -08:00
  • 6e1c0d966f libdw: Make srclines use a stable sort Josh Stone 2014-12-11 16:22:48 -08:00
  • 16f08ebdb8 libelf: Make sure n * w doesn't overflow in elf_getarsym. Mark Wielaard 2014-12-09 13:43:58 +01:00
  • e2bde25962 libdwfl: Check file count overflow in handle_file_note. Mark Wielaard 2014-12-09 13:16:23 +01:00
  • a0da75619a readelf: Check count fits and doesn't overflow fptr in handle_file_note. Mark Wielaard 2014-12-09 12:58:07 +01:00
  • 990fbe5653 readelf: Report invalid data if action table doesn't follow call site table. Mark Wielaard 2014-12-08 10:11:43 +01:00
  • 8d200b5b72 libdw: save startp/endp boundaries in Dwarf_CU Josh Stone 2014-12-10 18:41:43 -08:00
  • 64e44dfc94 libdw: optimize dwarf_hasattr to just look at abbrev Josh Stone 2014-12-10 18:33:34 -08:00
  • b849f813e6 libdw: unify die->abbrev lookups Josh Stone 2014-12-10 18:28:04 -08:00
  • 2098b3d315 addr2line: Always prefer linkage_name over plain names Josh Stone 2014-12-10 11:14:40 -08:00
  • aecdf2670c addr2line: Iterate scopes for inline's parent function Josh Stone 2014-12-10 11:06:52 -08:00
  • f0c5ef85bb readelf: maximum operations per instruction cannot be zero in .debug_line. Mark Wielaard 2014-12-07 23:40:12 +01:00
  • 96ddcad5b6 readelf: DW_OP_call_ref and DW_OP_GNU_implicit_pointer are invalid for CFA. Mark Wielaard 2014-12-07 22:45:28 +01:00
  • cdd0c0037b libdwfl: Check actually used ehsize, shentsize and phentsize in relocate.c Mark Wielaard 2014-12-07 20:48:43 +01:00
  • 27304cb338 libdwfl: Never relocate value against section zero (load address). Mark Wielaard 2014-12-07 20:26:56 +01:00
  • cb73b5a015 libdw: Add overflow checking to __libdw_form_val_len. Mark Wielaard 2014-12-04 21:43:44 +01:00
  • edb079a596 Change calling convention of dwarf_getmacros to allow opcode 0xff Petr Machata 2014-12-02 21:22:14 +01:00
  • d0070a982c objdump: Add various sanity checks to guard against corrupted data. Mark Wielaard 2014-12-04 17:01:20 +01:00
  • 0ed4f98a89 readelf: Fix overflow check in handle_sysv_hash64. Mark Wielaard 2014-11-30 21:03:57 +01:00
  • 99581b6c83 libdwfl: Check relocations don't overlap ELF ehdr, shdrs or phdrs. Mark Wielaard 2014-11-29 20:23:30 +01:00
  • 9875561921 readelf: Don't trash destshdr for STT_SECTION in handle_relocs_rel[a]. Mark Wielaard 2014-11-28 22:22:16 +01:00
  • 805ec833c1 Add configure --disable-textrelcheck option to enable CC=afl-fuzz on 32bit. Mark Wielaard 2014-11-27 23:53:30 +01:00
  • 12ab700282 libdw: Initialize variables in getcfi_gnu_eh_frame. Mark Wielaard 2014-11-27 23:41:57 +01:00
  • 4466216343 tests: vdsosyms call dwfl_linux_proc_attach. Mark Wielaard 2014-11-27 23:19:47 +01:00
  • 13a9fa3013 readelf: Cast Dwarf_Word length to ptrdiff_t for comparison. Mark Wielaard 2014-11-27 00:12:32 +01:00
  • 020fc02c55 readelf, libdw: Guard against divide by zero line_range in .debug_line. Mark Wielaard 2014-11-24 21:54:42 +01:00
  • 59480ba86f libdw: Always check __libdw_find_attr return value. Mark Wielaard 2014-11-23 23:21:05 +01:00
  • 04b61f8601 libdw: Don't assert in __libdw_getabbrev when seeing bad DWARF. Mark Wielaard 2014-11-23 23:13:55 +01:00
  • f62658f71f libelf: Change signed overflow check to unsigned in elf_getdata_rawchunk. Mark Wielaard 2014-11-23 21:54:51 +01:00
  • 4929606ee8 readelf: Check length for nexthdr overflow in print_debug_aranges_section. Mark Wielaard 2014-11-23 18:26:16 +01:00
  • 51abc748db libelf: Copy over any leftover data from src to dest in elf_cvt_note. Mark Wielaard 2014-11-23 15:27:23 +01:00
  • 9644aaff5f readelf: print_attributes (-A) robustify and handle non-gnu attributes. Mark Wielaard 2014-11-21 23:26:35 +01:00
  • 712c8faddc Use elf_getphdrnum instead of accessing ehdr->e_phnum directly. Mark Wielaard 2014-11-22 23:08:48 +01:00
  • 2deeb7c510 libelf: elf_getphdrnum sanity check the returned phnum result. Mark Wielaard 2014-11-22 17:33:05 +01:00
  • 9f8c08e682 dwarf.h: Add DW_LANG_C11, DW_LANG_C_plus_plus_11 and DW_LANG_C_plus_plus_14. Mark Wielaard 2014-11-24 22:17:51 +01:00
  • 03c033f871 dwarf.h: Add DW_AT_noreturn. Mark Wielaard 2014-11-26 17:51:28 +01:00
  • 86b0b13a08 libdwfl: Sanity check the symbol table before use. Mark Wielaard 2014-11-18 10:07:10 +01:00
  • d405f93d40 readelf: Fix sanity check of DW_FORM_block length in print_cfa_program Mark Wielaard 2014-11-18 10:01:48 +01:00