The symbol was moved using scripts/move-symbol-to-libc.py.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
headers := bits/dlfcn.h dlfcn.h
extra-libs := libdl
-libdl-routines := dlopen dlclose dlsym dlvsym dladdr dladdr1 dlinfo \
+libdl-routines := dlopen dlsym dlvsym dladdr dladdr1 dlinfo \
dlmopen dlfcn
routines := $(patsubst %,s%,$(filter-out dlfcn,$(libdl-routines)))
elide-routines.os := $(routines)
routines += \
+ dlclose \
dlerror \
libc_dlerror_result \
libc {
GLIBC_2.0 {
+ dlclose;
dlerror;
}
GLIBC_2.34 {
+ dlclose;
dlerror;
}
GLIBC_PRIVATE {
libdl {
GLIBC_2.0 {
dladdr;
- dlclose;
dlopen;
dlsym;
}
#include <dlfcn.h>
#include <ldsodefs.h>
-
-#if !defined SHARED && IS_IN (libdl)
-
-int
-dlclose (void *handle)
-{
- return __dlclose (handle);
-}
-
-#else
-
-static void
-dlclose_doit (void *handle)
-{
- GLRO(dl_close) (handle);
-}
+#include <shlib-compat.h>
int
__dlclose (void *handle)
{
-# ifdef SHARED
+#ifdef SHARED
if (!rtld_active ())
return _dlfcn_hook->dlclose (handle);
-# endif
+#endif
- return _dlerror_run (dlclose_doit, handle) ? -1 : 0;
+ return _dlerror_run (GLRO (dl_close), handle) ? -1 : 0;
}
-# ifdef SHARED
-strong_alias (__dlclose, dlclose)
-# endif
+versioned_symbol (libc, __dlclose, dlclose, GLIBC_2_34);
+
+#if OTHER_SHLIB_COMPAT (libdl, GLIBC_2_0, GLIBC_2_34)
+compat_symbol (libdl, __dlclose, dlclose, GLIBC_2_0);
#endif
+++ /dev/null
-#include "dlclose.c"
extern struct dlfcn_hook *_dlfcn_hook;
libc_hidden_proto (_dlfcn_hook)
+/* Note: These prototypes are for initializing _dflcn_hook in static
+ libraries. Internal calls in glibc should use the __libc_dl*
+ functions defined in elf/dl-libc.c instead. */
+
extern void *__dlopen (const char *file, int mode DL_CALLER_DECL)
attribute_hidden;
extern void *__dlmopen (Lmid_t nsid, const char *file, int mode DL_CALLER_DECL)
attribute_hidden;
-extern int __dlclose (void *handle)
- attribute_hidden;
+extern int __dlclose (void *handle);
extern void *__dlsym (void *handle, const char *name DL_CALLER_DECL)
attribute_hidden;
extern void *__dlvsym (void *handle, const char *name, const char *version
GLIBC_2.2.6 dirname F
GLIBC_2.2.6 div F
GLIBC_2.2.6 dl_iterate_phdr F
+GLIBC_2.2.6 dlclose F
GLIBC_2.2.6 dlerror F
GLIBC_2.2.6 dngettext F
GLIBC_2.2.6 dprintf F
GLIBC_2.34 __isnanf128 F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 _hurd_libc_proc_init F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 timespec_getres F
GLIBC_2.2.6 dladdr F
-GLIBC_2.2.6 dlclose F
GLIBC_2.2.6 dlopen F
GLIBC_2.2.6 dlsym F
GLIBC_2.2.6 dlvsym F
GLIBC_2.17 dirname F
GLIBC_2.17 div F
GLIBC_2.17 dl_iterate_phdr F
+GLIBC_2.17 dlclose F
GLIBC_2.17 dlerror F
GLIBC_2.17 dngettext F
GLIBC_2.17 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.17 dladdr F
GLIBC_2.17 dladdr1 F
-GLIBC_2.17 dlclose F
GLIBC_2.17 dlinfo F
GLIBC_2.17 dlmopen F
GLIBC_2.17 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.32 dirname F
GLIBC_2.32 div F
GLIBC_2.32 dl_iterate_phdr F
+GLIBC_2.32 dlclose F
GLIBC_2.32 dlerror F
GLIBC_2.32 dngettext F
GLIBC_2.32 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.32 dladdr F
GLIBC_2.32 dladdr1 F
-GLIBC_2.32 dlclose F
GLIBC_2.32 dlinfo F
GLIBC_2.32 dlmopen F
GLIBC_2.32 dlopen F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.4 dirname F
GLIBC_2.4 div F
GLIBC_2.4 dl_iterate_phdr F
+GLIBC_2.4 dlclose F
GLIBC_2.4 dlerror F
GLIBC_2.4 dngettext F
GLIBC_2.4 dprintf F
GLIBC_2.4 dladdr F
GLIBC_2.4 dladdr1 F
-GLIBC_2.4 dlclose F
GLIBC_2.4 dlinfo F
GLIBC_2.4 dlmopen F
GLIBC_2.4 dlopen F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.4 dirname F
GLIBC_2.4 div F
GLIBC_2.4 dl_iterate_phdr F
+GLIBC_2.4 dlclose F
GLIBC_2.4 dlerror F
GLIBC_2.4 dngettext F
GLIBC_2.4 dprintf F
GLIBC_2.4 dladdr F
GLIBC_2.4 dladdr1 F
-GLIBC_2.4 dlclose F
GLIBC_2.4 dlinfo F
GLIBC_2.4 dlmopen F
GLIBC_2.4 dlopen F
GLIBC_2.29 dirname F
GLIBC_2.29 div F
GLIBC_2.29 dl_iterate_phdr F
+GLIBC_2.29 dlclose F
GLIBC_2.29 dlerror F
GLIBC_2.29 dngettext F
GLIBC_2.29 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.29 dladdr F
GLIBC_2.29 dladdr1 F
-GLIBC_2.29 dlclose F
GLIBC_2.29 dlinfo F
GLIBC_2.29 dlmopen F
GLIBC_2.29 dlopen F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.10 __cxa_at_quick_exit F
GLIBC_2.10 __posix_getopt F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.10 __cxa_at_quick_exit F
GLIBC_2.10 __posix_getopt F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.4 dirname F
GLIBC_2.4 div F
GLIBC_2.4 dl_iterate_phdr F
+GLIBC_2.4 dlclose F
GLIBC_2.4 dlerror F
GLIBC_2.4 dngettext F
GLIBC_2.4 dprintf F
GLIBC_2.4 dladdr F
GLIBC_2.4 dladdr1 F
-GLIBC_2.4 dlclose F
GLIBC_2.4 dlinfo F
GLIBC_2.4 dlmopen F
GLIBC_2.4 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.18 dirname F
GLIBC_2.18 div F
GLIBC_2.18 dl_iterate_phdr F
+GLIBC_2.18 dlclose F
GLIBC_2.18 dlerror F
GLIBC_2.18 dngettext F
GLIBC_2.18 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.18 dladdr F
GLIBC_2.18 dladdr1 F
-GLIBC_2.18 dlclose F
GLIBC_2.18 dlinfo F
GLIBC_2.18 dlmopen F
GLIBC_2.18 dlopen F
GLIBC_2.18 dirname F
GLIBC_2.18 div F
GLIBC_2.18 dl_iterate_phdr F
+GLIBC_2.18 dlclose F
GLIBC_2.18 dlerror F
GLIBC_2.18 dngettext F
GLIBC_2.18 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.18 dladdr F
GLIBC_2.18 dladdr1 F
-GLIBC_2.18 dlclose F
GLIBC_2.18 dlinfo F
GLIBC_2.18 dlmopen F
GLIBC_2.18 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.2 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.2 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.21 dirname F
GLIBC_2.21 div F
GLIBC_2.21 dl_iterate_phdr F
+GLIBC_2.21 dlclose F
GLIBC_2.21 dlerror F
GLIBC_2.21 dngettext F
GLIBC_2.21 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.21 dladdr F
GLIBC_2.21 dladdr1 F
-GLIBC_2.21 dlclose F
GLIBC_2.21 dlinfo F
GLIBC_2.21 dlmopen F
GLIBC_2.21 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.3 dirname F
GLIBC_2.3 div F
GLIBC_2.3 dl_iterate_phdr F
+GLIBC_2.3 dlclose F
GLIBC_2.3 dlerror F
GLIBC_2.3 dngettext F
GLIBC_2.3 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.3 dladdr F
-GLIBC_2.3 dlclose F
GLIBC_2.3 dlopen F
GLIBC_2.3 dlsym F
GLIBC_2.3 dlvsym F
GLIBC_2.17 dirname F
GLIBC_2.17 div F
GLIBC_2.17 dl_iterate_phdr F
+GLIBC_2.17 dlclose F
GLIBC_2.17 dlerror F
GLIBC_2.17 dngettext F
GLIBC_2.17 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.17 dladdr F
GLIBC_2.17 dladdr1 F
-GLIBC_2.17 dlclose F
GLIBC_2.17 dlinfo F
GLIBC_2.17 dlmopen F
GLIBC_2.17 dlopen F
GLIBC_2.33 dirname F
GLIBC_2.33 div F
GLIBC_2.33 dl_iterate_phdr F
+GLIBC_2.33 dlclose F
GLIBC_2.33 dlerror F
GLIBC_2.33 dngettext F
GLIBC_2.33 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.33 dladdr F
GLIBC_2.33 dladdr1 F
-GLIBC_2.33 dlclose F
GLIBC_2.33 dlinfo F
GLIBC_2.33 dlmopen F
GLIBC_2.33 dlopen F
GLIBC_2.27 dirname F
GLIBC_2.27 div F
GLIBC_2.27 dl_iterate_phdr F
+GLIBC_2.27 dlclose F
GLIBC_2.27 dlerror F
GLIBC_2.27 dngettext F
GLIBC_2.27 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.27 dladdr F
GLIBC_2.27 dladdr1 F
-GLIBC_2.27 dlclose F
GLIBC_2.27 dlinfo F
GLIBC_2.27 dlmopen F
GLIBC_2.27 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.2 dirfd F
GLIBC_2.2 dirname F
GLIBC_2.2 div F
+GLIBC_2.2 dlclose F
GLIBC_2.2 dlerror F
GLIBC_2.2 dngettext F
GLIBC_2.2 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.2 dladdr F
-GLIBC_2.2 dlclose F
GLIBC_2.2 dlopen F
GLIBC_2.2 dlsym F
GLIBC_2.2 dlvsym F
GCC_3.0 __deregister_frame_info_bases F
GCC_3.0 __register_frame_info_bases F
GCC_3.0 __register_frame_info_table_bases F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.10 __cxa_at_quick_exit F
GLIBC_2.10 __posix_getopt F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GCC_3.0 __deregister_frame_info_bases F
GCC_3.0 __register_frame_info_bases F
GCC_3.0 __register_frame_info_table_bases F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.10 __cxa_at_quick_exit F
GLIBC_2.10 __posix_getopt F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.0 dirfd F
GLIBC_2.0 dirname F
GLIBC_2.0 div F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.0 dprintf F
GLIBC_2.0 drand48 F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GCC_3.0 __deregister_frame_info_bases F
GCC_3.0 __register_frame_info_bases F
GCC_3.0 __register_frame_info_table_bases F
+GLIBC_2.0 dlclose F
GLIBC_2.0 dlerror F
GLIBC_2.10 __cxa_at_quick_exit F
GLIBC_2.10 __posix_getopt F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.0 dladdr F
-GLIBC_2.0 dlclose F
GLIBC_2.0 dlopen F
GLIBC_2.0 dlsym F
GLIBC_2.1 dlopen F
GLIBC_2.2.5 dirname F
GLIBC_2.2.5 div F
GLIBC_2.2.5 dl_iterate_phdr F
+GLIBC_2.2.5 dlclose F
GLIBC_2.2.5 dlerror F
GLIBC_2.2.5 dngettext F
GLIBC_2.2.5 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.2.5 dladdr F
-GLIBC_2.2.5 dlclose F
GLIBC_2.2.5 dlopen F
GLIBC_2.2.5 dlsym F
GLIBC_2.2.5 dlvsym F
GLIBC_2.16 dirname F
GLIBC_2.16 div F
GLIBC_2.16 dl_iterate_phdr F
+GLIBC_2.16 dlclose F
GLIBC_2.16 dlerror F
GLIBC_2.16 dngettext F
GLIBC_2.16 dprintf F
GLIBC_2.34 cnd_signal F
GLIBC_2.34 cnd_timedwait F
GLIBC_2.34 cnd_wait F
+GLIBC_2.34 dlclose F
GLIBC_2.34 dlerror F
GLIBC_2.34 execveat F
GLIBC_2.34 mtx_destroy F
GLIBC_2.16 dladdr F
GLIBC_2.16 dladdr1 F
-GLIBC_2.16 dlclose F
GLIBC_2.16 dlinfo F
GLIBC_2.16 dlmopen F
GLIBC_2.16 dlopen F