This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
gdb and binutils branch master updated. 06614111d1be94b43ea8dd83805184d4e177bcea
- From: nickc at sourceware dot org
- To: binutils-cvs at sourceware dot org
- Date: 1 Dec 2014 16:44:49 -0000
- Subject: gdb and binutils branch master updated. 06614111d1be94b43ea8dd83805184d4e177bcea
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".
The branch, master has been updated
via 06614111d1be94b43ea8dd83805184d4e177bcea (commit)
from 30b5e341f3bcb219718ad32cd0065670fd37e637 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=06614111d1be94b43ea8dd83805184d4e177bcea
commit 06614111d1be94b43ea8dd83805184d4e177bcea
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Dec 1 16:43:46 2014 +0000
More fixes for memory access violations exposed by fuzzed binaries.
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.
* archive.c (do_slurp_coff_armap): Add range checks to prevent
running off the end of the string table.
* compress.c (bfd_get_full_section_contents): Return a NULL
pointer for zero sized sections. Do not attempt to copy a buffer
onto itself.
* elf-attrs.c (_bfd_elf_parse_attributes): Check for an empty
header. Add range checks to avoid running off the end of the
section.
* elf.c (bfd_elf_get_str_section): Seek before allocating so that
if the seek fails, no memory is allocated.
(bfd_elf_string_from_elf_section): Do not allocate a string from a
non string section. It only leads to trouble later on.
(_bfd_elf_print_private_bfd_data): Check for there being too
little external dynamic data.
(bfd_section_from_shdr): Replace assertion with a failure mode.
(bfd_section_from_shdr): When walking a loaded group section use
the internal structure size, not the external size. Check for the
group section being empty.
* elf32-i386.c (elf_i386_rtype_to_howto): Replace assertion with a
failure mode.
* elfcode.h (elf_slurp_reloc_table): Likewise.
* reloc.c (bfd_perform_relocation): Avoid seg-fault if the howto
parameter is NULL.
-----------------------------------------------------------------------
Summary of changes:
bfd/ChangeLog | 27 ++++++++++++
bfd/archive.c | 11 ++++-
bfd/compress.c | 13 ++++-
bfd/elf-attrs.c | 16 ++++++-
bfd/elf.c | 36 ++++++++++++----
bfd/elf32-i386.c | 4 +-
bfd/elfcode.h | 4 +-
bfd/reloc.c | 4 ++
binutils/ChangeLog | 17 +++++++
binutils/dwarf.c | 118 ++++++++++++++++++++++++++++++++--------------------
binutils/dwarf.h | 2 +
binutils/objdump.c | 17 +++++++
binutils/readelf.c | 1 +
13 files changed, 207 insertions(+), 63 deletions(-)
hooks/post-receive
--
gdb and binutils