diff options
author | Nick Clifton <nickc@redhat.com> | 2020-05-28 16:43:01 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2020-05-28 16:43:01 +0100 |
commit | a3fc941881e4224eff3ef20ba1e784026bcc17fa (patch) | |
tree | 9eb5ed86c3d6ee5db40ef5ad03e0869acd36e984 /ld | |
parent | 44486dcf19b62708ad49bbb6094e065a223dea99 (diff) | |
download | binutils-a3fc941881e4224eff3ef20ba1e784026bcc17fa.zip binutils-a3fc941881e4224eff3ef20ba1e784026bcc17fa.tar.gz binutils-a3fc941881e4224eff3ef20ba1e784026bcc17fa.tar.bz2 |
Stop the linker from accepting executable ELF files as inputs to other links.
PR 26047
* ldelf.c (ldelf_after_open): Fail if attempting to link one
executable into another.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/ldelf.c | 7 |
2 files changed, 13 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index c4d9f89..096b9a5 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2020-05-28 Nick Clifton <nickc@redhat.com> + + PR 26047 + * ldelf.c (ldelf_after_open): Fail if attempting to link one + executable into another. + 2020-05-28 H.J. Lu <hongjiu.lu@intel.com> * NEWS: Mention --enable-textrel-check=yes is default for @@ -1065,6 +1065,13 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd, { int type = 0; + if (bfd_link_executable (& link_info) + && elf_tdata (abfd)->elf_header->e_type == ET_EXEC) + { + einfo (_("%F%P: cannot use executable file '%pB' as input to a link\n"), + abfd); + } + if (bfd_input_just_syms (abfd)) continue; |