#
267654 |
|
19-Jun-2014 |
gjb |
Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
230410 |
|
20-Jan-2012 |
kib |
MFC r229768: Implement fdlopen(3), an rtld interface to load shared object by file descriptor.
|
#
225736 |
|
22-Sep-2011 |
kensmith |
Copy head to stable/9 as part of 9.0-RELEASE release cycle.
Approved by: re (implicit)
|
#
218890 |
|
20-Feb-2011 |
nwhitehorn |
Remove a hack made obsolete by the binutils 2.17 merge.
|
#
217153 |
|
08-Jan-2011 |
kib |
In rtld, read the initial stack access mode from AT_STACKPROT as set by kernel, and parse PT_GNU_STACK phdr from linked and loaded dsos.
If the loaded dso requires executable stack, as specified by PF_X bit of p_flags of PT_GNU_STACK phdr, but current stack protection does not permit execution, the __pthread_map_stacks_exec symbol is looked up and called. It should be implemented in libc or threading library and change the protection mode of all thread stacks to be executable.
Provide a private interface _rtld_get_stack_prot() to export the stack access mode as calculated by rtld.
Reviewed by: kan
|
#
211705 |
|
23-Aug-2010 |
kib |
Introduce implementation-private rtld interface _rtld_addr_phdr, which fills struct dl_phdr_info for the shared object that contains the specified address, if any.
Idea and reviewed by: kan MFC after: 3 weeks
|
#
209885 |
|
10-Jul-2010 |
nwhitehorn |
RTLD support for powerpc64. A few small modifications to the Makefile and symbol map are required to support various consequences of the dot symbol scheme:
- Symbols beginning with a dot are reserved, so start private symbols with an underscore. - In order to set RTLD breakpoints, gdb must be able to locate the text entry point, not the data section function descriptor, so add .r_debug_state to the symbol map on powerpc64.
Obtained from: projects/ppc64
|
#
190673 |
|
03-Apr-2009 |
kib |
Allow the NULL, RTLD_SELF and RTLD_NEXT handles to work with dlfunc(3). dlfunc() called dlsym() to do the work, and dlsym() determines the dso that originating the call by the return address. Due to this, dlfunc() operated as if the caller is always the libc.
To fix this, move the dlfunc() to rtld, where it can call the internal implementation of dlsym, and still correctly fetch return address. Provide usual weak stub for the symbol from libc for static binaries. dlfunc is put to FBSD_1.0 symver namespace in the ld.so export to override dlfunc@FBSD_1.0 weak symbol, exported by libc.
Reported, analyzed and tested by: Tijl Coosemans <tijl ulyssis org> PR: standards/133339 Reviewed by: kan
|
#
185369 |
|
27-Nov-2008 |
kib |
Add two rtld exported symbols, _rtld_atfork_pre and _rtld_atfork_post. Threading library calls _pre before the fork, allowing the rtld to lock itself to ensure that other threads of the process are out of dynamic linker. _post releases the locks.
This allows the rtld to have consistent state in the child. Although child may legitimately call only async-safe functions, the call may need plt relocation resolution, and this requires working rtld.
Reported and debugging help by: rink Reviewed by: kan, davidxu MFC after: 1 month (anyway, not before 7.1 is out)
|
#
171385 |
|
11-Jul-2007 |
kan |
Add r_debug_state to the list of symbols exported from rtld. GDB needs to be able to find it in order to trap shared library events from rtld.
Approved by: re (rwatson)
|
#
169171 |
|
01-May-2007 |
deischen |
Catch up with the private namespace change (s/FBSDprivate/FBSDprivate_1.0).
|
#
169092 |
|
29-Apr-2007 |
deischen |
Use C comments since we now preprocess these files with CPP.
|
#
168558 |
|
09-Apr-2007 |
kan |
Bring rtld exports in line with corresponding symbols exported from libc.
Disable SYMVER_DEFAULT n rtld until its implications are understood better.
|
#
168319 |
|
03-Apr-2007 |
kan |
Prepare rtld for symbol versioning. Disable it by default for now.
|