glibc/dlfcn
Florian Weimer 9e78f6f6e7 Implement _dl_catch_error, _dl_signal_error in libc.so [BZ #16628]
This change moves the main implementation of _dl_catch_error,
_dl_signal_error to libc.so, where TLS variables can be used
directly.  This removes a writable function pointer from the
rtld_global variable.

For use during initial relocation, minimal implementations of these
functions are provided in ld.so.  These are eventually interposed
by the libc.so implementations.  This is implemented by compiling
elf/dl-error-skeleton.c twice, via elf/dl-error.c and
elf/dl-error-minimal.c.

As a side effect of this change, the static version of dl-error.c
no longer includes support for the
_dl_signal_cerror/_dl_receive_error mechanism because it is only
used in ld.so.
2016-11-30 15:59:57 +01:00
..
bug-atexit1-lib.c
bug-atexit1.c
bug-atexit2-lib.c
bug-atexit2.c
bug-atexit3-lib.cc
bug-atexit3.c
bug-dl-leaf-lib-cb.c
bug-dl-leaf-lib.c
bug-dl-leaf.c
bug-dlopen1.c
bug-dlsym1-lib1.c
bug-dlsym1-lib2.c
bug-dlsym1.c
default.c
defaultmod1.c
defaultmod2.c
dladdr1.c
dladdr.c
dlclose.c
dlerror.c
dlfcn.c
dlfcn.h
dlinfo.c
dlmopen.c
dlopen.c
dlopenold.c
dlsym.c
dlvsym.c
errmsg1.c
errmsg1mod.c
failtest.c
failtestmod.c
glreflib1.c
glreflib2.c
glreflib3.c
glrefmain.c
Makefile
modatexit.c
modcxaatexit.c
moddummy1.c
moddummy2.c
modstatic2.c
modstatic3.c
modstatic5.c
modstatic.c
sdladdr1.c
sdladdr.c
sdlclose.c
sdlerror.c
sdlinfo.c
sdlmopen.c
sdlopen.c
sdlsym.c
sdlvsym.c
tst-dladdr.c
tst-dlinfo.c
tst-rec-dlopen.c
tstatexit.c
tstcxaatexit.c
tststatic2.c
tststatic3.c
tststatic4.c
tststatic5.c
tststatic.c
Versions