freebsd-nq/libexec/rtld-elf
Ed Maste 7a2ff73d68 rtld: populate DT_DEBUG iff DYNAMIC segment is writable
MIPS has/had a read-only DYNAMIC segment, and uses an extra level of
indirection (through MIPS_RLD_MAP) to locate the debugger rendezvous
data.

Some linkers (e.g. LLVM's lld) may produce MIPS binaries with a writable
DYNAMIC segment, which would allow us to eventually drop a special case.

Therefore, instead of hardcoding knowledge that DYNAMIC is not writable
on MIPS just check the permissions on the segment.

Reviewed by:	kib
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D4791
2016-01-05 15:52:16 +00:00
..
aarch64 Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
amd64 rtld: wrap a comment to 80 columns 2016-01-05 02:21:57 +00:00
arm Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
i386 Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
mips Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
powerpc Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
powerpc64 Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
riscv Add support for RISC-V architecture. 2015-12-24 15:47:51 +00:00
sparc64 Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
tests Fix LDADD/DPADD that should be LIBADD. 2015-12-04 03:17:47 +00:00
debug.c
debug.h Remove historical GNUC test 2015-05-06 15:29:11 +00:00
libmap.c Rather than using the #define for path names, indirect through a char * 2015-10-31 04:39:55 +00:00
libmap.h Make the directory mapping functionality, which was previously only 2013-09-21 21:03:52 +00:00
Makefile Follow-on to r291666: use -ffreestanding instead of -fno-builtin. 2015-12-03 21:25:59 +00:00
Makefile.depend new depends 2015-06-16 23:37:19 +00:00
malloc.c Move all the paths into a new path.h to centralize them. 2015-10-31 04:39:28 +00:00
map_object.c Allow PT_NOTES segments to be located anywhere in the executable 2015-10-14 18:29:21 +00:00
paths.h Create a generalized exec hook that different architectures can hook 2016-01-03 04:32:02 +00:00
rtld_lock.c Change compiler setting to make default visibility of the symbols for 2015-03-29 18:53:21 +00:00
rtld_lock.h Change compiler setting to make default visibility of the symbols for 2015-03-29 18:53:21 +00:00
rtld_printf.c Add the LD_LIBRARY_PATH_FDS environmental variable. 2014-06-20 17:08:32 +00:00
rtld_printf.h Add the LD_LIBRARY_PATH_FDS environmental variable. 2014-06-20 17:08:32 +00:00
rtld_tls.h Change compiler setting to make default visibility of the symbols for 2015-03-29 18:53:21 +00:00
rtld.1 mdoc: remove superfluous paragraph macros. 2014-06-23 18:40:21 +00:00
rtld.c rtld: populate DT_DEBUG iff DYNAMIC segment is writable 2016-01-05 15:52:16 +00:00
rtld.h Provide support for ELFv2 userland if using a newer compiler (recent clang 2015-12-03 00:10:57 +00:00
Symbol.map Add rtld private interface for dso to detect dynamic loading 2015-01-03 18:09:53 +00:00
xmalloc.c Increase alignment to size of pointer if the alignment is too small. 2014-02-22 11:06:48 +00:00