ld: Check for ELF input before accessing ELF section data
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 13 Jan 2021 14:48:07 +0000 (06:48 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 13 Jan 2021 14:48:20 +0000 (06:48 -0800)
commitb634d11d61e3236f4602e9461dba67d1320f65e3
tree37f33ef6d13473a3bbe4604419104398138fe0de
parent844bf810cf9feebe50772c29d72256ec3c872270
ld: Check for ELF input before accessing ELF section data

commit b209b5a6b8a accesses ELF section data without checking if input is
ELF.  It caused:

sh: line 1: 1355479 Segmentation fault      (core dumped) /export/build/gnu/tools-build/binutils-gitlab-x32/build-x86_64-linux-gnux32/ld/ld-new -o tmpdir/pe-x86-64-1 -z norelro -L/export/gnu/import/git/gitlab/x86-binutils/ld/testsuite/ld-x86-64 -m elf_x86_64 --entry=begin tmpdir/pe-x86-64-1a.obj tmpdir/pe-x86-64-1b.obj tmpdir/pe-x86-64-1c.obj 2>&1
FAIL: Build pe-x86-64-1

on Linux/x86-64 with PE/x86-64 inputs.  Add check for ELF input before
accessing ELF section data.

* ldelfgen.c (add_link_order_input_section): Check for ELF input
before accessing ELF section data.
ld/ChangeLog
ld/ldelfgen.c