[PATCH] elf: Check bfd_target_elf_flavour on input first
H.J. Lu
hjl.tools@gmail.com
Tue Sep 15 20:07:03 GMT 2020
Check bfd_target_elf_flavour on input first in ldelf_after_open before
checking elf_tdata.
* ldelf.c (ldelf_after_open): Check bfd_target_elf_flavour first.
---
ld/ChangeLog | 4 ++++
ld/ldelf.c | 3 ++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index c65a188736..01587d8621 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,7 @@
+2020-09-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * ldelf.c (ldelf_after_open): Check bfd_target_elf_flavour first.
+
2020-09-15 Hans-Peter Nilsson <hp@axis.com>
PR ld/26589
diff --git a/ld/ldelf.c b/ld/ldelf.c
index 75c6c015ae..c37358f05e 100644
--- a/ld/ldelf.c
+++ b/ld/ldelf.c
@@ -1043,7 +1043,8 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
/* Do not allow executable files to be used as inputs to the link. */
for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
{
- if (!bfd_input_just_syms (abfd)
+ if (abfd->xvec->flavour == bfd_target_elf_flavour
+ && !bfd_input_just_syms (abfd)
&& elf_tdata (abfd) != NULL
&& elf_tdata (abfd)->elf_header != NULL
/* FIXME: Maybe check for other non-supportable types as well ? */
--
2.26.2
More information about the Binutils
mailing list