HomePhabricator

[llvm-readobj/elf] - Don't crash when the size of s dynamic symbol table…

Authored by grimar on Tue, Sep 1, 1:11 AM.

Description

[llvm-readobj/elf] - Don't crash when the size of s dynamic symbol table, inferred from the hash table, is broken.

Currently we might derive the dynamic symbol table size from the DT_HASH hash table (using its nchain field).
It is possible to crash dumpers with a broken relocation that refers to a symbol with an index
that is too large. To trigger it, the inferred size of the dynamic symbol table should go past the end of the object.

This patch adds a size validation + warning.

Differential revision: https://reviews.llvm.org/D86923