#define _LDSO_H_
#include <features.h>
-/* Pull in compiler and arch stuff */
-#include <stdlib.h>
-#include <stdarg.h>
-/* Pull in the arch specific type information */
-#include <sys/types.h>
-/* Now the ldso specific headers */
-#include <dl-elf.h>
-#include <dl-syscall.h>
-#include <dl-hash.h>
-#include <dl-string.h>
-/* Pull in the arch specific page size */
-#include <asm/page.h>
-#ifndef PAGE_SIZE
-# define PAGE_SHIFT 12
-# define PAGE_SIZE (1UL << PAGE_SHIFT)
-#endif
/* Prepare for the case that `__builtin_expect' is not available. */
#if __GNUC__ == 2 && __GNUC_MINOR__ < 96
#define __LINUX_COMPILER_H
#endif
+/* Pull in compiler and arch stuff */
+#include <stdlib.h>
+#include <stdarg.h>
+/* Pull in the arch specific type information */
+#include <sys/types.h>
+/* Pull in the ldso syscalls and string functions */
+#include <dl-syscall.h>
+#include <dl-string.h>
+/* Pull in the arch specific page size */
+#include <asm/page.h>
+#ifndef PAGE_SIZE
+# define PAGE_SHIFT 12
+# define PAGE_SIZE (1UL << PAGE_SHIFT)
+#endif
+/* Now the ldso specific headers */
+#include <dl-elf.h>
+#include <dl-hash.h>
/* Global variables used within the shared library loader */
extern char *_dl_library_path; /* Where we look for libraries */
extern unsigned long *_dl_brkp; /* The end of the data segment for brk and sbrk */
extern unsigned long *_dl_envp; /* The environment address */
extern int _dl_secure; /* Are we dealing with setuid stuff? */
+extern size_t _dl_pagesize; /* Store the page size for use later */
+extern const char *_dl_progname; /* The name of the shared library loader */
#ifdef __SUPPORT_LD_DEBUG__
extern char *_dl_debug;