[Object/ELF] - Do not crash on invalid section index.
authorGeorge Rimar <grimar@accesssoftek.com>
Mon, 17 Oct 2016 09:30:06 +0000 (09:30 +0000)
committerGeorge Rimar <grimar@accesssoftek.com>
Mon, 17 Oct 2016 09:30:06 +0000 (09:30 +0000)
commit71f3c1921a8c56123d74f65e62b0c736297ad0fa
treef5718a6d810b929667321bdc3c42337b706446b6
parentada286202e2ba878163787f31b26d952de30797a
[Object/ELF] - Do not crash on invalid section index.

If object has wrong (large) string table index and
also incorrect large value for amount of sections in total,
then section index passes the check:

  if (Index >= getNumSections())
    return object_error::invalid_section_index;

But result pointer then is far after end of file data, what
result in a crash.

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

llvm-svn: 284369
llvm/include/llvm/Object/ELF.h
llvm/test/Object/Inputs/invalid-section-index2.elf [new file with mode: 0644]
llvm/test/Object/invalid.test