Fix a few moere memory access violations.
[deliverable/binutils-gdb.git] / binutils / ChangeLog
index 2e71311f49a040b2592261477a4e2b7eebbf225c..48957bd6cebdb39f7cf218d94294bcbc04f760ee 100644 (file)
@@ -1,3 +1,334 @@
+2014-12-11  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (display_gdb_index): Add more range checks.
+
+2014-12-11  Alan Modra  <amodra@gmail.com>
+
+       * configure.ac: Check for long long and sizes of long long and long.
+       * elfcomm.h (HOST_WIDEST_INT): Test HAVE_LONG_LONG in place of
+       __STDC_VERSION__ and __GNUC__.
+       * strings.c (print_strings): Likewise.
+       * dwarf.c (DWARF_VMA_FMT, DWARF_VMA_FMT_LONG): Likewise.
+       (read_debug_line_header): Use dwarf_vmatoa to print warning.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+2014-12-10  Alan Modra  <amodra@gmail.com>
+
+       * objdump.c: #include "coff-bfd.h".
+
+2014-12-09  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+
+       * od-elf32_avr.c (elf32_avr_dump_mem_usage): Fix device initialization.
+
+2014-12-09  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * objdump.c (display_any_bfd): Avoid infinite loop closing and
+       opening the same archive again and again.
+
+2014-12-09  Chen Gang  <gang.chen.5i5j@gmail.com>
+
+       * windres.c (open_file_search): Free path buffer on failure.
+
+2014-12-08  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * dwarf.c (display_debug_frames): Check for a negative
+       augmentation data length.
+       (display_gdb_index): Check for invalid offsets.
+       * elfcomm.c (process_archive_index_and_symbols): Check for an
+       index number that overflows when multiplied by the ar index size.
+       * readelf.c (dump_ia64_unwind): Add range checks.
+       (slurp_ia64_unwind_table): Change to a boolean function.  Add
+       range checks.
+       (process_version_sections): Add range checks.
+       (get_symbol_version_string): Add check for missing section
+       headers.
+
+2014-12-08  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+
+       * configure.ac: Add od-elf32_avr to build.
+       * configure: Regenerate.
+       * od-elf32_avr.c: New file.
+       * objdump.h: Declare objdump_private_desc_elf32_avr.
+
+2014-12-06  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * readelf.c: Include elf/visium.h.
+       (guess_is_rela): Deal with EM_VISIUM.
+       (dump_relocations): Likewise.
+       (get_machine_name): Likewise.
+       (get_machine_flags): Likewise.
+       (get_osabi_name): Likewise.
+       (is_32bit_abs_reloc): Likewise.
+       (is_32bit_pcrel_reloc): Likewise.
+       (is_16bit_abs_reloc): Likewise.
+
+2014-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * readelf.c (decode_AVR_machine_flags): New function.
+       (get_machine_flags): Add EM_AVR case.
+
+2014-12-03  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * objdump.c (free_debug_section): Reset the compress_status as
+       well.
+
+2014-12-03  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * readelf.c (get_machine_flags): Replace call to abort with a
+       warning message and a return value.
+       (get_elf_section_flags): Likewise.
+       (get_symbol_visibility): Likewise.
+       (get_ia64_symbol_other): Likewise.
+       (get_ia64_symbol_other): Likewise.
+       (is_32bit_abs_reloc): Likewise.
+       (apply_relocations): Likewise.
+       (display_arm_attribute): Likewise.
+
+2014-12-02  Denis Chertykov  <chertykov@gmail.com>
+
+       * MAINTAINERS: Fix my email address.
+
+2014-12-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * dwarf.c (process_cu_tu_index): Properly check for an out of
+       range row index.
+
+2014-12-01  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.h (struct dwarf_section): Add user_data field.
+       * dwarf.c (frame_need_space): Check for an over large register
+       number.
+       (display_debug_frames): Check the return value from
+       frame_need_space.  Check for a CFA expression that is so long the
+       start address wraps around.
+       (debug_displays): Initialise the user_data field.
+       * objdump.c (load_specific_debug_section): Save the BFD section
+       pointer in the user_data field of the dwarf_section structure.
+       (free_debug_section): Update BFD section data when freeing section
+       contents.
+       * readelf.c (load_specific_debug_section): Initialise the
+       user_data field.
+
+2014-12-01  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * dwarf.c (process_cu_tu_index): Check for an out of range row
+       index.
+       * elfcomm.c (adjust_relative_path): Change name_len parameter to
+       an unsigned long.  Check for path length overflow.
+       (process_archive_index_and_symbols): Check for invalid header
+       size.
+       (setup_archive): Add checks for invalid archives.
+       (get_archive_member_name): Add range checks.
+       * elfcomm.h (adjust_relative_path): Update prototyoe.
+       * readelf.c (process_archive): Add range checks.
+
+2014-11-28  Alan Modra  <amodra@gmail.com>
+
+       * readelf.c (get_32bit_elf_symbols): Cast bfd_size_type values to
+       unsigned long for %lx.
+       (get_64bit_elf_symbols, process_section_groups): Likewise.
+
+2014-11-27  Espen Grindhaug <espen@grindhaug.org>
+           Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * readelf.c (get_data): Move excessive length check to earlier on
+       in the function and allow for wraparound in the arithmetic.
+       (get_32bit_elf_symbols): Terminate early if the section size is
+       zero.  Check for an invalid sh_entsize.  Check for an index
+       section with an invalid size.
+       (get_64bit_elf_symbols): Likewise.
+       (process_section_groups): Check for an invalid sh_entsize.
+
+2014-11-24  Mark Wielaard  <mjw@redhat.com>
+
+       * dwarf.c (read_and_display_attr_value): Handle DW_LANG_C11,
+       DW_LANG_C_plus_plus_11 and DW_LANG_C_plus_plus_14.
+
+2014-11-26  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (display_block): Do nothing if the block starts after
+       the end of the buffer.
+       (read_and_display_attr_value): Add range checks.
+       (struct Frame_Chunk): Make the ncols and ra fields unsigned.
+       (frame_need_space): Test for an ncols of zero.
+       (read_cie): Fail if the augmentation data extends off the end of
+       the buffer.
+       (display_debug_frames): Add checks for read_cie failing.  Add
+       range checks.
+
+2014-11-25  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * objdump.c (objdump_print_symname): Replace
+       bfd_elf_get_symbol_version_string with
+       bfd_get_symbol_version_string.
+
+2014-11-25  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/16496
+       * objdump.c (objdump_print_symname): Call
+       bfd_elf_get_symbol_version_string to get ELF symbol version
+       string.  Append version string if needed.
+
+       * readelf.c (versioned_symbol_info): New enum.
+       (get_symbol_version_string): New.  Extracted from
+       process_symbol_table.
+       (dump_relocations): Add a new argument to indicate if dynamic
+       symbol table is used.  Use get_symbol_version_string to get
+       symbol version string for dynamic symbol.  Append version string
+       if needed.
+       (process_relocs): Updated dump_relocations call.
+       (process_symbol_table): Use get_symbol_version_string.
+
+2014-11-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * configure: Regenerated.
+
+2014-11-21  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (get_encoded_value): Check for an encoded size of 0.
+       (display_debug_lines_raw): Check for an invalid line range value.
+       (display_debug_frames): Check for corrupt augmentation data.
+
+2014-11-21  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * readelf.c (process_version_sections): Prevent an infinite loop
+       processing corrupt version need data.
+       (process_corefile_note_segment): Handle corrupt notes.
+
+2014-11-21  Terry Guo  <terry.guo@arm.com>
+
+       * readelf.c (arm_attr_tag_FP_arch): Extended to support FPv5.
+
+2014-11-19  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
+
+       * dwarf.c (process_extended_line_op): Fix signedness warning.
+
+2014-11-18  Nick Clifton  <nickc@redhat.com>
+
+       PR binutuls/17605
+       * bucomm.c (print_arelt_descr): Check for ctime returning NULL.
+
+2014-11-18  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (get_encoded_value): Warn and return if the encoded
+       value is more than 64-bits long.
+       (SAFE_BYTE_GET): Do not attempt to read more than 64-bits.
+       (process_extended_line_op): Add more range checks.
+       (decode_location_expression): Use the return value from
+       display_block.  Add more range checks.
+       (read_debug_line_header): Add range check.
+       (display_debug_lines_raw): Add range checks.
+       (display_debug_frames): Silently skip multiple zero terminators.
+       Add range checks.
+       (process_cu_tu_index): Check for non-existant or empty sections.
+       Use SAFE_BYTE_GET instead of byte_get.
+
+2014-11-18  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * readelf.c (get_unwind_section_word): Skip reloc processing if
+       there are no relocs associated with the section.
+       (decode_tic6x_unwind_bytecode): Warn and return if the stack
+       pointer adjustment falls off the end of the buffer.
+
+2014-11-14  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (get_encoded_value): Add an 'end' parameter.  Change the
+       'data' parameter to a double pointer and return the updated value.
+       (decode_location_expression): Update call to get_encoded_value.
+       (frame_need_space): Handle the case where one or both of the
+       mallocs fails.
+       (read_cie): Initialise the cie pointer, even if the read fails.
+       (display_debug_frames): Warn if the calculated block_end is before
+       the start of the block.  Break the loop if the CIE could not be
+       read.  Update call to get_encoded_value.  Warn if the read CFA
+       expressions are too big.
+
+2014-11-13  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * readelf.c (process_version_sections): If the read of the version
+       def information fails, make sure that the external verdef data is
+       not used.
+       (get_dynamic_data): Do not attempt to allocate memory for more
+       dynamic data than there is in the file.  If the read fails, free
+       the allocated buffer.
+       (process_symbol_table): Do not print dynamic information if we
+       were unable to read the dynamic symbol table.
+       (print_gnu_note): Do not print the note if the descsz is too
+       small.
+
+2014-11-12  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (read_and_display_attr_value): Check that we do not read
+       past end.
+       (display_debug_pubnames_worker): Add range checks.
+       (process_debug_info): Check for invalid pointer sizes.
+       (display_loc_list): Likewise.
+       (display_loc_list_dwo): Likewise.
+       (display_debug_ranges): Likewise.
+       (display_debug_aranges): Check for invalid address size.
+       (read_cie): Add range checks.  Replace call strchr with while loop.
+       * objdump.c (dump_dwarf): Replace abort with a warning message.
+       (print_section_stabs): Improve range checks.
+       * rdcoff.c (coff_get_slot): Use long for indx parameter type.
+       Add check for an excesively large index.
+       * rddbg.c (read_section_stabs_debugging_info): Zero terminate the
+       string table.  Avoid walking off the end of the stabs data.
+       * stabs.c (parse_stab_string): Add check for a NULL name.
+
+2014-11-11  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * binutils/readelf.c (dynamic_nent): Change type to size_t.
+       (slurp_rela_relocs): Use size_t type for nrelas.
+       (slurp_rel_relocs): Likewise.
+       (get_program_headers): Improve out of memory error message.
+       (get_32bit_section_headers): Likewise.
+       (get_32bit_section_headers): Likewise.
+       (get_64bit_section_headers): Likewise.
+       (get_32bit_elf_symbols): Likewise.
+       (get_64bit_elf_symbols): Likewise.
+       (process_section_groups): Likewise.
+       (get_32bit_dynamic_section): Likewise.
+       (get_64bit_dynamic_section): Likewise.
+       (process_dynamic_section): Likewise.
+       (process_version_sections): Likewise.
+       (get_symbol_index_type): Likewise.
+       (process_mips_specific): Likewise.
+       (process_corefile_note_segment): Likewise.
+       (process_version_sections): Use size_t type for total.
+       (get_dynamic_data): Change type of number parameter to size_t.
+       Improve out of memory error messages.
+       (process_symbol_table): Change type of nbuckets and nchains to
+       size_t.  Skip processing of sections headers if there are none.
+       Improve out of memory error messages.
+
+2014-11-11  Nick Clifton  <nickc@redhat.com>
+
+       * po/fr.po: Updated French translation.
+
+2014-11-11  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * readelf.c (display_arm_attribute): Avoid reading off the end of
+       the buffer when processing a Tag_nodefaults.
+
 2014-11-10  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17531
This page took 0.025438 seconds and 4 git commands to generate.