PR28173, nds32_elf_howto_table index out of bounds
authorAlan Modra <amodra@gmail.com>
Fri, 6 Aug 2021 09:05:23 +0000 (18:35 +0930)
committerAlan Modra <amodra@gmail.com>
Fri, 6 Aug 2021 13:36:40 +0000 (23:06 +0930)
commita379e7588c5e3a9750bba8c51218cce9225122f5
treebb84eca9f003424c9fa0d9236b11ddcbef1d6342
parent352bd3aa1c68137d4a5115183f42c40b75ee05b3
PR28173, nds32_elf_howto_table index out of bounds

Indexing the howto table was seriously broken by a missing entry, and
use of assertions about user input rather than testing the input.

PR 28173
* elf32-nds32.c (nds32_elf_howto_table): Add missing empty howto.
(bfd_elf32_bfd_reloc_type_table_lookup): Replace assertions with
range checks.  Return NULL if unsupported reloc type.  Remove
dead code.  Take an unsigned int param.
(nds32_info_to_howto_rel): Test for NULL howto or howto name
return from lookup.  Remove assertion.
(nds32_info_to_howto): Remove unnecessary ATTRIBUTE_UNUSED.
Test for NULL howto or howto name return from lookup.
bfd/elf32-nds32.c