File: unsubmitted-ldso-machine-mismatch.diff

package info (click to toggle)
glibc 2.41-12
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 300,384 kB
  • sloc: ansic: 1,050,583; asm: 238,243; makefile: 20,379; python: 13,537; sh: 11,827; cpp: 5,197; awk: 1,795; perl: 317; yacc: 292; pascal: 182; sed: 19
file content (21 lines) | stat: -rw-r--r-- 556 bytes parent folder | download | duplicates (11)
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)