From 45e4762c2c7d04cd51213735c2b440c94cdcf28a Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sat, 15 Mar 2003 23:16:22 +0000 Subject: * dlfcn/tst-dlinfo.c: New file. * dlfcn/Makefile (tests): Add tst-dlinfo. ($(objpfx)tst-dlinfo): New target. * dlfcn/dlinfo.c: New file. * dlfcn/Makefile (libdl-routines): Add it. * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo. * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo. [__USE_GNU] (RTLD_DI_*): New enum constants. [__USE_GNU] (Dl_serpath, Dl_serinfo): New types. * elf/dl-load.c (cache_rpath): New inline function. (_dl_map_object): Use it. (_dl_rtld_di_serinfo): New function. * sysdeps/generic/ldsodefs.h: Declare it. * elf/Versions (ld: GLIBC_PRIVATE): Add it. --- sysdeps/generic/ldsodefs.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'sysdeps') diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index 2d8041fa68..8bd2efb8f0 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -554,6 +554,16 @@ extern void _dl_setup_hash (struct link_map *map) internal_function attribute_hidden; +/* Collect the directories in the search path for LOADER's dependencies. + The data structure is defined in . If COUNTING is true, + SI->dls_cnt and SI->dls_size are set; if false, those must be as set + by a previous call with COUNTING set, and SI must point to SI->dls_size + bytes to be used in filling in the result. */ +extern void _dl_rtld_di_serinfo (struct link_map *loader, + Dl_serinfo *si, bool counting) + internal_function; + + /* Search loaded objects' symbol tables for a definition of the symbol referred to by UNDEF. *SYM is the symbol table entry containing the reference; it is replaced with the defining symbol, and the base load -- cgit 1.4.1