Add check to avoid corrupt input files whose section sizes are greater than
[deliverable/binutils-gdb.git] / binutils / ChangeLog
index 2140bd9250f341f9580442e5bad90b9cbd5bfdbe..b25d429e884228a081cfec95ec2dc573e7d33d05 100644 (file)
+2005-07-05  Dmitry V. Levin  <ldv@altlinux.org>
+           Nick Clifton  <nickc@redhat.com>
+
+       * strings.c (filename_and_size_t): New typedef.
+       (strings_a_section): Skip sections with size greater or equal to
+       the file size.  Cache the file size to avoid repeated stat()s.
+       (strings_object_file): Pass filename_and_size_t argument to
+       strings_a_section() via bfd_map_over_sections().
+
+2005-07-04  Alan Modra  <amodra@bigpond.net.au>
+
+       PR 1004
+       * objcopy.c (copy_object): Use bfd_make_section_with_flags.
+       (write_debugging_info): Likewise.
+       (setup_section): Use bfd_make_section_anyway_with_flags.
+
+2005-07-01  Steve Ellcey  <sje@cup.hp.com>
+
+       * configure.in (AM_BINUTILS_WARNINGS): Add.
+       (BFD_NEED_DECLARATION): Replace with AC_CHECK_DECLS.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+       * objdump.c (NEED_DECLARATION_*): Replace with !HAVE_DECL_*.
+       * bucomm.h: (NEED_DECLARATION_*): Ditto.
+
+2005-06-30  Ben Elliston  <bje@gnu.org>
+
+       * Makefile.am (check-DEJAGNU): Don't search for expect.
+       * Makefile.in: Regenerate.
+
+2005-06-30  Ben Elliston  <bje@gnu.org>
+
+       * Makefile.am (EXPECT): Set to expect.
+       (RUNTEST): Likewise, set to runtest.
+       * Makefile.in: Regenerate.
+
+2005-06-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * readelf.c (CHECK_ENTSIZE_VALUES, CHECK_ENTSIZE): Define.
+       (process_section_headers): Use it.
+       (process_relocs): Don't crash if symsec is not SHT_SYMTAB
+       or SHT_DYNSYM.
+       (process_version_sections): Use sizeof (Elf_External_Versym)
+       instead of sh_entsize.
+
+2005-06-16  Nick Clifton  <nickc@redhat.com>
+
+       * rename.c (simple_copy): Only define if it is going to be used.
+       (smart_rename): Mark the preserve_dates parameter as possibly
+       being unused.
+
+       * resres.c (write_res_data): Prevent a potential compile time
+       warning by casting the return value from fwrite.
+
+2005-06-14  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR 995
+       * ar.c (BUFSIZE): Moved to ...
+       * bucomm.h (BUFSIZE): Here.
+
+       * bucomm.c: Include <assert.h>.
+       (bfd_get_archive_filename): New.
+       * bucomm.h (bfd_get_archive_filename): New.
+
+       * objcopy.c (copy_unknown_object): New.
+       (copy_object): Use bfd_get_archive_filename when reporting input
+       error. Don't call fatal on unknown arch.
+       (copy_archive): Call copy_unknown_object on unknown format or
+       arch.
+
+2005-06-14  Jakub Jelinek  <jakub@redhat.com>
+
+       * readelf.c (cmalloc, xcmalloc, xcrealloc): New functions.
+       (get_data): Add nmemb argument.  Return NULL if nmemb * size
+       overflows.  If var == NULL, allocate one extra byte and
+       clear it.
+       (slurp_rela_relocs, slurp_rel_relocs, get_32bit_program_headers,
+       get_64bit_program_headers, get_program_headers,
+       get_32bit_section_headers, get_64bit_section_headers,
+       get_32bit_elf_symbols, get_64bit_elf_symbols, process_section_headers,
+       process_section_groups, process_relocs, slurp_ia64_unwind_table,
+       ia64_process_unwind, slurp_hppa_unwind_table, hppa_process_unwind,
+       get_32bit_dynamic_section, get_64bit_dynamic_section,
+       process_dynamic_section, process_version_sections, get_dynamic_data,
+       process_symbol_table, dump_section, load_debug_str, load_debug_loc,
+       load_debug_range, read_and_display_attr_value, process_debug_info,
+       get_debug_info, frame_need_space, display_debug_frames,
+       display_debug_section, process_mips_specific, process_gnu_liblist,
+       process_corefile_note_segment): Adjust get_data callers.  Use
+       cmalloc, xcmalloc and xcrealloc instead of {m,xm,xre}alloc where
+       passed size is a product of 2 numbers.
+
+       * readelf.c (print_mode): Fix comment typo.
+       (slurp_rela_relocs, slurp_rel_relocs): Fix memory leaks.
+       (dump_relocations): Fix a thinko in check for invalid st_name.
+       (process_program_headers): Don't crash if string_table is NULL.
+       (process_section_headers): Don't crash if e_shstrndx is invalid.
+       Ensure string_table_length is 0 if string_table == NULL.
+       Don't return just because string_table is NULL.
+       (process_section_groups): Don't crash if symtab's sh_link or
+       symbol's st_name is invalid.  Fix a memory leak.  Fix check for
+       invalid section number entry.
+       (process_relocs): Don't crash if relocation or symbol section's
+       sh_link is invalid.
+       (slurp_ia64_unwind_table, slurp_hppa_unwind_table): Don't crash if
+       relocation section's sh_info is invalid.
+       (ia64_process_unwind, hppa_process_unwind): Don't crash if symbol
+       table's sh_link is invalid.
+       (process_version_sections): Don't crash on version or symbol
+       section's sh_link is invalid.  Don't crash if symbol's st_shndx
+       is invalid.
+       (process_symbol_table): Don't crash if string table is corrupt
+       or symbol's st_name, st_shndx, vna_name or vda_name is invalid.
+       (debug_apply_rela_addends): Don't crash if relocation section's
+       sh_info or sh_link is invalid.
+       (display_debug_loc): Warn for unterminated .debug_loc section
+       or start offsets not within .debug_loc section boundaries.
+       (process_gnu_liblist): Don't crash if liblist section's sh_link
+       or entry's l_name is invalid.
+
+2005-06-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * objdump.c (disassemble_bytes): Don't crash if q->howto == NULL.
+       If q->howto->name == NULL, print q->howto->type as number instead.
+       (dump_reloc_set): Likewise.
+
+2005-06-07  Eric Christopher  <echristo@redhat.com>
+
+       * readelf.c (guess_is_rela): Support ms1.
+       (dump_relocations): Ditto.
+       (get_machine_name): Ditto.
+
+2005-06-07  Aldy Hernandez  <aldyh@redhat.com>
+           Michael Snyder  <msnyder@redhat.com>
+           Stan Cox  <scox@redhat.com>
+
+       * Makefile.am (readelf.o): Depend on ms1.h.
+
+       * Makefile.in: Regenerate.
+
+       * readelf.c: Include ms1.h.
+
+2005-06-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR 990
+       * nm.c (print_symbol): Call bfd_find_line before
+       bfd_find_nearest_line.
+
+2005-06-06  Alan Modra  <amodra@bigpond.net.au>
+
+       * NEWS: Mention new powerpc ld support.
+
+2005-06-03  Steve Ellcey  <sje@cup.hp.com>
+
+       * configure.in: Check for getc_unlocked prototype.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+       * strings.c (get_char): Only call getc_unlocked if we have seen a
+       prototype.
+
+2005-06-03  Nick Clifton  <nickc@redhat.com>
+
+       * configure.in (ALL_LINGUAS): Add zh_TW
+       * configure: Regenerate.
+       * po/zh_TW.po: New Chinese (traditional) translation.
+
+2005-05-31  Richard Henderson  <rth@redhat.com>
+
+       * readelf.c (dump_relocations): Special case R_ALPHA_LITUSE.
+
+2005-05-29  Richard Henderson  <rth@redhat.com>
+
+       * readelf.c (get_alpha_dynamic_type): New.
+       (get_dynamic_type): Call it.
+
+2005-05-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * readelf.c (process_section_groups): Report group section
+       index. Check if the section member index is valid.
+
+2005-05-23  Fred Fish  <fnf@specifixinc.com>
+
+       * addr2line.c (unwind_inlines): New flag for 'i' option.
+       (usage): Document '-i' option.
+       (long_options): Recognize '--inlines'.
+       (translate_addresses): Loop, calling bfd_find_inliner_info as
+       necessary and printing multiple output lines.
+       (main): Handle 'i' option.
+       * doc/binutils.texi (addr2line): Document '-i' option.
+       * NEWS: Mention new addr2line '-i' option.
+
 2005-05-23  Nick Clifton  <nickc@redhat.com>
 
        * readelf.c (fetch_indirect_string): Display a warning message
        when a corrupt DW_FORM_strp value is encountered.
-       
+
        (process_debug_info): Mention that the compilation unit offset is
        being displayed in hexadecimal.
-       
+
        (display_debug_lines): Fix typo in name of .debug_line section.
 
 2005-05-19  Zack Weinberg  <zack@codesourcery.com>
This page took 0.041049 seconds and 4 git commands to generate.