freebsd-dev/libexec/rtld-elf
Konstantin Belousov 8569deaf1c Implement support for ELF filters in rtld. Both normal and auxillary
filters are implemented.

Filtees are loaded on demand, unless LD_LOADFLTR environment variable
is set or -z loadfltr was specified during the linking. This forces
rtld to upgrade read-locked rtld_bind_lock to write lock when it
encounters an object with filter during symbol lookup.

Consolidate common arguments of the symbol lookup functions in the
SymLook structure.  Track the state of the rtld locks in the
RtldLockState structure. Pass local RtldLockState through the rtld
symbol lookup calls to allow lock upgrades.

Reviewed by:	kan
Tested by:	Mykola Dzham <i levsha me>, nwhitehorn (powerpc)
2010-12-25 08:51:20 +00:00
..
amd64 Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
arm Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
i386 Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
ia64 Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
mips Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
powerpc Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
powerpc64 Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
sparc64 Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
debug.c
debug.h Use C99's varadic macro syntax instead of gcc's. 2006-03-28 18:26:47 +00:00
libmap.c Fix a malloc overrun in 32-bit compat libmap lookup code. 2006-01-31 06:08:28 +00:00
libmap.h Description from Dan: 2005-02-04 02:46:41 +00:00
Makefile Add a hook to pass debug flags to the build of rtld when doing make in 2010-12-25 08:42:38 +00:00
malloc.c Use the newly provided aux vectors to get pagesize and osreldate information. 2010-08-17 09:05:39 +00:00
map_object.c In rtld's map_object(), use pread(..., 0) rather than read() to read the 2009-10-06 17:14:39 +00:00
rtld_lock.c Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
rtld_lock.h Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
rtld_tls.h Add support for Thread Local Storage. 2004-08-03 08:51:00 +00:00
rtld.1 Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
rtld.c Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
rtld.h Implement support for ELF filters in rtld. Both normal and auxillary 2010-12-25 08:51:20 +00:00
Symbol.map Introduce implementation-private rtld interface _rtld_addr_phdr, which 2010-08-23 15:27:03 +00:00
xmalloc.c