Add range checks to local array accesses in elf32-arm.c.
authorNick Clifton <nickc@redhat.com>
Tue, 25 May 2021 10:22:15 +0000 (11:22 +0100)
committerNick Clifton <nickc@redhat.com>
Tue, 25 May 2021 10:22:15 +0000 (11:22 +0100)
commit74fd118fb91f49377b63931d092b6d42dd8b3b3c
tree282cb26ac49bb00a87a1b20623d3f6bca09f3f02
parentcc850f74725370808bd1e11ac9440d75df4cb23e
Add range checks to local array accesses in elf32-arm.c.

bfd * elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field.
(elf32_arm_num_entries): New macro.
(elf32_arm_allocate_local_sym_info): Initialise the new field.
Allocate arrays individually so that buffer overruns can be
detected by memory checkers.
(elf32_arm_create_local_iplt): Check num_entries.
(elf32_arm_get_plt_info): Likewise.
(elf32_arm_final_link_relocate): Likewise.
(elf32_arm_check_relocs): Likewise.
(elf32_arm_size_dynamic_sections): Likewise.
(elf32_arm_output_arch_local_syms): Likewise.
bfd/ChangeLog
bfd/elf32-arm.c