Fix a memory access violation when attempting to parse a corrupt COFF binary with... users/ARM/embedded-binutils-master-2017q4 users/ARM/embedded-gdb-master-2017q4
authorNick Clifton <nickc@redhat.com>
Tue, 28 Nov 2017 13:20:31 +0000 (13:20 +0000)
committerNick Clifton <nickc@redhat.com>
Tue, 28 Nov 2017 13:20:31 +0000 (13:20 +0000)
commitb23dc97fe237a1d9e850d7cbeee066183a00630b
tree20c22c6c0f5c79582c14669cbe3f34fe0304f210
parent6c6bc899302deb7c9b14f71da79c0fffc992204e
Fix a memory access violation when attempting to parse a corrupt COFF binary with a relocation that points beyond the end of the section to be relocated.

PR 22506
* reloc.c (reloc_offset_in_range): Rename to
bfd_reloc_offset_in_range and export.
(bfd_perform_relocation): Rename function invocation.
(bfd_install_relocation): Likewise.
(bfd_final_link_relocate): Likewise.
* bfd-in2.h: Regenerate.
* coff-arm.c (coff_arm_reloc): Use bfd_reloc_offset_in_range.
* coff-i386.c (coff_i386_reloc): Likewise.
* coff-i860.c (coff_i860_reloc): Likewise.
* coff-m68k.c (mk68kcoff_common_addend_special_fn): Likewise.
* coff-m88k.c (m88k_special_reloc): Likewise.
* coff-mips.c (mips_reflo_reloc): Likewise.
* coff-x86_64.c (coff_amd64_reloc): Likewise.
bfd/ChangeLog
bfd/bfd-in2.h
bfd/coff-arm.c
bfd/coff-i386.c
bfd/coff-i860.c
bfd/coff-m68k.c
bfd/coff-m88k.c
bfd/coff-mips.c
bfd/coff-x86_64.c
bfd/reloc.c