Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/compat/linux/common Changed the way signature tests are ...



details:   https://anonhg.NetBSD.org/src/rev/1a61a344b8f8
branches:  trunk
changeset: 514351:1a61a344b8f8
user:      manu <manu%NetBSD.org@localhost>
date:      Thu Aug 30 20:22:08 2001 +0000

description:
Changed the way signature tests are done. This makes possible to run
ld.so as an executable on the PowerPC (Linux's ldd does this), and it also
much clearer IMHO.

diffstat:

 sys/compat/linux/common/linux_exec_elf32.c |  19 +++++++------------
 1 files changed, 7 insertions(+), 12 deletions(-)

diffs (36 lines):

diff -r f65de25736f0 -r 1a61a344b8f8 sys/compat/linux/common/linux_exec_elf32.c
--- a/sys/compat/linux/common/linux_exec_elf32.c        Thu Aug 30 17:16:02 2001 +0000
+++ b/sys/compat/linux/common/linux_exec_elf32.c        Thu Aug 30 20:22:08 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_exec_elf32.c,v 1.52 2001/07/14 02:05:06 christos Exp $   */
+/*     $NetBSD: linux_exec_elf32.c,v 1.53 2001/08/30 20:22:08 manu Exp $       */
 
 /*-
  * Copyright (c) 1995, 1998, 2000, 2001 The NetBSD Foundation, Inc.
@@ -306,20 +306,15 @@
        int error;
        size_t len;
 
+       if (((error = ELFNAME2(linux,signature)(p, epp, eh, itp)) != 0) &&
 #ifdef LINUX_GCC_SIGNATURE
-       if ((error = ELFNAME2(linux,signature)(p, epp, eh, itp)) != 0)
-               if ((error = ELFNAME2(linux,gcc_signature)(p, epp, eh)) != 0)
-                       return error;
-#else
+           ((error = ELFNAME2(linux,gcc_signature)(p, epp, eh)) != 0) &&
+#endif
 #ifdef LINUX_ATEXIT_SIGNATURE
-       if ((error = ELFNAME2(linux,signature)(p, epp, eh, itp)) != 0)
-               if ((error = ELFNAME2(linux,atexit_signature)(p, epp, eh)) != 0)
+           ((error = ELFNAME2(linux,atexit_signature)(p, epp, eh)) != 0) &&
+#endif
+           1) 
                        return error;
-#else
-       if ((error = ELFNAME2(linux,signature)(p, epp, eh, itp)) != 0)
-               return error;
-#endif
-#endif
 
        if (itp[0]) {
                if ((error = emul_find(p, NULL, epp->ep_esch->es_emul->e_path,



Home | Main Index | Thread Index | Old Index