freebsd-nq/libexec/rtld-elf
Marcel Moolenaar 708bc7c7b4 Fix a nasty memory corruption bug caused by having a bogus pointer
for the DT_IA64_PLT_RESERVE dynamic table entry. When a shared object
does not have any PLT relocations, the linker apparently doesn't find
it necessary to actually reserve the space for the BOR (Bind On
Reference) entries as pointed to by the DTE. As a result, relocatable
data in the PLT was overwritten, causing some unexpected control flow
with annoyingly predictable outcome: coredump.
To reproduce:
	% echo 'int main() { return 0; }' > foo.c
	% cc -o foo foo.c -lxpg4
2002-08-22 03:56:57 +00:00
..
alpha Remove the nanosleep calls from the spin loops in the locking code. 2002-07-06 20:25:56 +00:00
amd64 Remove the nanosleep calls from the spin loops in the locking code. 2002-07-06 20:25:56 +00:00
i386 Remove the nanosleep calls from the spin loops in the locking code. 2002-07-06 20:25:56 +00:00
ia64 Fix a nasty memory corruption bug caused by having a bogus pointer 2002-08-22 03:56:57 +00:00
sparc64 Add END markers to asm functions so that debuggers can find their size. 2002-07-17 22:20:41 +00:00
debug.c
debug.h
Makefile Dillon's recent commits to the dynamic linker without running them 2002-06-10 21:51:16 +00:00
malloc.c Include stddef.h for NULL definition, rather than rolling our own here. 2002-08-21 19:03:26 +00:00
map_object.c
rtld.1 The .Nm utility 2002-07-06 19:19:48 +00:00
rtld.c Don't acquire the writer lock in rtld_exit when clearing the shared 2002-08-08 15:53:23 +00:00
rtld.h
xmalloc.c