Add test case with invalid phdr offset

Parsing this file results in patchelf segfaulting at:

Program received signal SIGSEGV, Segmentation fault.
std::vector<Elf32_Phdr, std::allocator<Elf32_Phdr> >::_M_realloc_insert<Elf32_Phdr const&> (this=0x7fffffff80a8, __position=..., __args=...)
    at /nix/store/h31cy7jm6g7cfqbhc5pm4rf9c53i3qfb-gcc-9.3.0/include/c++/9.3.0/bits/vector.tcc:449
449		  _Alloc_traits::construct(this->_M_impl,
(gdb) bt
    at /nix/store/h31cy7jm6g7cfqbhc5pm4rf9c53i3qfb-gcc-9.3.0/include/c++/9.3.0/bits/vector.tcc:449
    at /nix/store/h31cy7jm6g7cfqbhc5pm4rf9c53i3qfb-gcc-9.3.0/include/c++/9.3.0/bits/stl_vector.h:1195
    this=0x7fffffff8088, fileContents=...) at patchelf.cc:421
This commit is contained in:
Julian Stecklina
2020-11-15 15:55:10 +01:00
parent fa8896a5a8
commit c105b1c837
2 changed files with 1 additions and 1 deletions

View File

@@ -16,7 +16,7 @@ TEST_DIR=$(dirname $(readlink -f $0))/invalid-elf
# Each test case is listed here. The names should roughly indicate
# what makes the given ELF file invalid.
TEST_CASES="invalid-shrstrtab-idx invalid-shrstrtab-size invalid-shrstrtab-zero
invalid-shrstrtab-nonterm invalid-shdr-name"
invalid-shrstrtab-nonterm invalid-shdr-name invalid-phdr-offset"
FAILED_TESTS=""

Binary file not shown.