summaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-08-22 17:59:19 +0000
committerUlrich Drepper <drepper@redhat.com>2000-08-22 17:59:19 +0000
commitc43a17327f2a016f3c8f4cbba61038a48ed59526 (patch)
treee55fb53d2b14cfde1f8eea55ae868e1480c31db9 /sysdeps
parent32b4fe6a63b7a95a8bdcd0d799a9de2106723790 (diff)
(_dl_sysdep_start): Move DL_SYSDEP_OSCHECK before the use of the first system call.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/dl-sysdep.c8
-rw-r--r--sysdeps/unix/sysv/linux/dl-osinfo.h5
2 files changed, 9 insertions, 4 deletions
diff --git a/sysdeps/generic/dl-sysdep.c b/sysdeps/generic/dl-sysdep.c
index c081269bb0..889a216d4a 100644
--- a/sysdeps/generic/dl-sysdep.c
+++ b/sysdeps/generic/dl-sysdep.c
@@ -138,6 +138,10 @@ _dl_sysdep_start (void **start_argptr,
break;
}
+#ifdef DL_SYSDEP_OSCHECK
+ DL_SYSDEP_OSCHECK (dl_fatal);
+#endif
+
/* Linux doesn't provide us with any of these values on the stack
when the dynamic linker is run directly as a program. */
@@ -178,10 +182,6 @@ _dl_sysdep_start (void **start_argptr,
if (__builtin_expect (__libc_enable_secure, 0))
__libc_check_standard_fds ();
-#ifdef DL_SYSDEP_OSCHECK
- DL_SYSDEP_OSCHECK (dl_fatal);
-#endif
-
(*dl_main) (phdr, phnum, &user_entry);
return user_entry;
}
diff --git a/sysdeps/unix/sysv/linux/dl-osinfo.h b/sysdeps/unix/sysv/linux/dl-osinfo.h
index 00a6caeaa6..f327161b7a 100644
--- a/sysdeps/unix/sysv/linux/dl-osinfo.h
+++ b/sysdeps/unix/sysv/linux/dl-osinfo.h
@@ -19,6 +19,11 @@
#include <sys/sysctl.h>
+/* There is no prototype for __sysctl in that file. */
+extern int __sysctl (int *name, int nlen, void *oldval,
+ size_t *oldlenp, void *newval, size_t newlen);
+
+
#ifdef SHARED
/* This is the function used in the dynamic linker to print the fatal error
message. */