Fixes illegal memory access errors and arithmetic overflows when running strip on...
authorNick Clifton <nickc@redhat.com>
Thu, 26 Feb 2015 21:32:04 +0000 (21:32 +0000)
committerNick Clifton <nickc@redhat.com>
Thu, 26 Feb 2015 21:32:04 +0000 (21:32 +0000)
commitc86934ceee0971a04bbfc145c7b9a53357c25c91
tree3507e8637f28e853d3f611db5a83fd03c9f33866
parent9beb7c4e1d403e1374096df3a16607132a8cfe84
Fixes illegal memory access errors and arithmetic overflows when running strip on fuzzed binaries.

PR binutils/17512
* coffcode.h (coff_compute_section_file_positions): Report
negative page sizes.
* elf.c (elf_fake_sections): Handle excessive alignmment powers.
(assign_file_positions_for_non_load_sections): Replace assertion
with an error message.
(rewrite_elf_program_header): Handle excessive segment
alignments.
* mach-o.c (bfd_mach_o_read_section_32): Likewise.
(bfd_mach_o_read_section_64): Likewise.
* peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Use %B to
print a bfd name, not %A.
bfd/ChangeLog
bfd/coffcode.h
bfd/elf.c
bfd/mach-o.c
bfd/peXXigen.c