rtld: Implement ELF filters (DT_FILTER and DT_AUXILIARY)
authorJohn Marino <draco@marino.st>
Sat, 21 Jan 2012 17:31:30 +0000 (18:31 +0100)
committerJohn Marino <draco@marino.st>
Mon, 23 Jan 2012 16:13:17 +0000 (17:13 +0100)
commit35b2b265aa300727e840990e41e604edb8b25314
tree46d0100b98336ac27f245854c3ccb9408a8322f8
parent7f7401f2df3141fa3b8dfdd97fe86e624f5d9b13
rtld: Implement ELF filters (DT_FILTER and DT_AUXILIARY)

Filtrees 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.

Taken-from: FreeBSD SVN 216728 (27 DEC 2010)
libexec/rtld-elf/i386/reloc.c
libexec/rtld-elf/rtld.1
libexec/rtld-elf/rtld.c
libexec/rtld-elf/rtld.h
libexec/rtld-elf/x86_64/reloc.c