1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
---
elf/dl-load.c | 8 ++++++++
1 file changed, 8 insertions(+)
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -1717,6 +1717,14 @@
return -1;
}
#endif
+ else if (! __builtin_expect (elf_machine_matches_host (ehdr), 1))
+ {
+ /* Another non-fatal error, let's skip right past the
+ the libraries obviously built for other machines. */
+ __close_nocancel (fd);
+ __set_errno (ENOENT);
+ return -1;
+ }
else if (ehdr->e_ident[EI_DATA] != byteorder)
{
if (BYTE_ORDER == BIG_ENDIAN)
|