Detect and report corrupt relocs

This commit is contained in:
Nick Clifton 2000-07-21 19:56:19 +00:00
parent 0b5e1ab525
commit 7a3120d9a6
2 changed files with 12 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2000-07-21 Nick Clifton <nickc@cygnus.com>
* elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of
range symbol indices in relocs and issue an error message.
2000-07-20 H.J. Lu <hjl@gnu.org>
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check

View file

@ -7593,6 +7593,13 @@ _bfd_mips_elf_check_relocs (abfd, info, sec, relocs)
if (r_symndx < extsymoff)
h = NULL;
else if (r_symndx >= extsymoff + (symtab_hdr->sh_size / symtab_hdr->sh_entsize))
{
(*_bfd_error_handler)
(_("Malformed reloc detected for section %s"), name);
bfd_set_error (bfd_error_bad_value);
return false;
}
else
{
h = sym_hashes[r_symndx - extsymoff];