freebsd-dev/lib/libc/include
Konstantin Belousov ea246b6369 On shared object unload, in __cxa_finalize, call and clear all installed
atexit and __cxa_atexit handlers that are either installed by unloaded
dso, or points to the functions provided by the dso.

Use _rtld_addr_phdr to locate segment information from the address of
private variable belonging to the dso, supplied by crtstuff.c. Provide
utility function __elf_phdr_match_addr to do the match of address against
dso executable segment.

Call back into libthr from __cxa_finalize using weak
__pthread_cxa_finalize symbol to remove any atfork handler which
function points into unloaded object.

The rtld needs private __pthread_cxa_finalize symbol to not require
resolution of the weak undefined symbol at initialization time. This
cannot work, since rtld is relocated before sym_zero is set up.

Idea by:	kan
Reviewed by:	kan (previous version)
MFC after:	3 weeks
2010-08-23 15:38:02 +00:00
..
isc Merge the resolver part of BIND 9.4.3 into HEAD. 2008-12-14 19:39:53 +00:00
compat.h Change the ABI of some of the structures used by the SYSV IPC API: 2009-06-24 21:10:52 +00:00
fpmath.h Add support for the FPA floating-point format on ARM. The 2008-12-23 22:20:59 +00:00
libc_private.h On shared object unload, in __cxa_finalize, call and clear all installed 2010-08-23 15:38:02 +00:00
namespace.h Make openat(2) a cancellation point. 2009-10-11 20:19:45 +00:00
nscache.h - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
nscachedcli.h - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
nss_tls.h Revert unnecessary memset after calloc. 2009-05-28 15:02:21 +00:00
port_after.h We have gmtime_r(3). 2006-03-21 18:31:24 +00:00
port_before.h
reentrant.h The NetBSD Foundation has granted permission to remove clause 3 and 4 from 2010-03-02 17:20:04 +00:00
resolv_mt.h
spinlock.h Remove 3rd clause, renumber, ok per email 2007-01-12 07:31:30 +00:00
un-namespace.h Make openat(2) a cancellation point. 2009-10-11 20:19:45 +00:00