From 8dd569934c2019dff527f0587f3d809efeec7c03 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Mon, 10 Mar 2003 09:12:11 +0000 Subject: 2003-03-10 Roland McGrath * dlfcn/Makefile (libdl-routines): Add dladdr1. * dlfcn/dladdr1.c: New file. * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1. [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants. * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and a const ElfNN_Sym ** to fill in. * include/dlfcn.h: Update decl. Include . * dlfcn/dladdr.c (dladdr): Update caller. * malloc/mtrace.c (tr_where): Likewise. * sysdeps/generic/elf/backtracesyms.c: Likewise. * sysdeps/generic/elf/backtracesymsfd.c: Likewise. * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1. * Versions.def (libdl): Define GLIBC_2.3.3 set. --- include/dlfcn.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/dlfcn.h b/include/dlfcn.h index fd1c8a96a2..f0af0fc0f1 100644 --- a/include/dlfcn.h +++ b/include/dlfcn.h @@ -1,5 +1,6 @@ #ifndef _DLFCN_H #include +#include /* For ElfW. */ /* Internally used flag. */ #define __RTLD_DLOPEN 0x80000000 @@ -15,9 +16,12 @@ extern void *__libc_dlsym (void *__map, __const char *__name); extern int __libc_dlclose (void *__map); /* Locate shared object containing the given address. */ -extern int _dl_addr (const void *address, Dl_info *info) +#ifdef ElfW +extern int _dl_addr (const void *address, Dl_info *info, + struct link_map **mapp, const ElfW(Sym) **symbolp) internal_function; libc_hidden_proto (_dl_addr) +#endif /* Open the shared object NAME, relocate it, and run its initializer if it hasn't already been run. MODE is as for `dlopen' (see ). If -- cgit v1.2.3