]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit - bfd/elf.c
More fixes for invalid memory accesses, uncovered by valgrind and binary fuzzers.
authorNick Clifton <nickc@redhat.com>
Tue, 11 Nov 2014 15:34:27 +0000 (15:34 +0000)
committerNick Clifton <nickc@redhat.com>
Tue, 11 Nov 2014 15:34:27 +0000 (15:34 +0000)
commit201159ecec7e17600df4153e5d4e7a145f0c7cfe
tree328d0499e8bedc423bb8907ad53e30f7647f2df1
parent015de6884f6fdebaffd4b7d4c7f14fb4d5fc0bb1
More fixes for invalid memory accesses, uncovered by valgrind and binary fuzzers.

PR binutils/17512
* coffcode.h (coff_slurp_line_table): Initialise the parts of the
line number cache that would not be initialised by the copy from
the new line number table.
(coff_classify_symbol): Allow for _bfd_coff_internal_syment_name
returning NULL.
* coffgen.c (coff_get_normalized_symbols): Get the external
symbols before allocating space for the internal symbols, in case
the get fails.
* elf.c (_bfd_elf_slurp_version_tables): Only allocate a verref
array if one is needed.  Likewise with the verdef array.
* peXXigen.c (_bfd_XXi_swap_sym_in): Replace abort()'s with error
messages.
(_bfd_XXi_swap_aux_in): Make sure that all fields of the aux
structure are initialised.
(pe_print_edata): Avoid reading off the end of the data buffer.
bfd/ChangeLog
bfd/coffcode.h
bfd/coffgen.c
bfd/elf.c
bfd/peXXigen.c