#
6a7819e4 |
|
28-Apr-2024 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld.1: clarify interaction between -u and -o Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
d1cd0cc3 |
|
27-Apr-2024 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld: add direct-exec option -o allowing to set any known LD_ parameter for the current rtld invocation, but without polluting the activated' binary environment. In other words, the set parameter is not exported into the environment. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D44988
|
#
8d747370 |
|
20-Apr-2024 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld(1): minor clarification for LD_STATIC_TLS_EXTRA Also properly style the paragraph. Sponsored by: The FreeBSD Foundation MFC after: 3 days
|
#
95335dd3 |
|
29-Oct-2023 |
Stephen J. Kiernan <stevek@FreeBSD.org> |
rtld: introduce STATIC_TLS_EXTRA The new STATIC_TLS_EXTRA variable provides a means for applications to increases the size of the extra static TLS space allocated by rtld beyond the default of '128'. This extra static TLS space is used for objects loaded with dlopen. The value specified in the variable must be no less than the default value and no greater than the maximum allowed value for size_t type. If an invalid value is specified, rtld will ignore it and just use the default value. The rtld(1) man page is updated to document this new option. Obtained from: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D42025
|
#
fa9896e0 |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: two-line nroff pattern Remove /^\.\\"\n\.\\"\s*\$FreeBSD\$$\n/
|
#
8cc44a1e |
|
10-Nov-2022 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld: add support for the $LIB token similar to the same token in glibc. Requested and reviewed by: bapt Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D37329
|
#
6c799530 |
|
25-Feb-2022 |
John F. Carr <jfc@mit.edu> |
rtld.1: Fix misplaced text PR: 262194 Fixes: f90218886fc8 ("rtld: introduce PRELOAD_FDS") MFC after: 3 days
|
#
64ba1f4c |
|
12-Nov-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld: Implement LD_SHOW_AUXV It dumps auxv as seen by interpreter, right before starting any user code. Copied from: glibc Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
ba7f9c1b |
|
11-Oct-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld direct exec: add -d option to ignore lack of execute permission on the binary. The check is a bad security theatre anyway. Reviewed by: arichardson, imp Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D32464
|
#
7da378f9 |
|
14-Aug-2021 |
Fangrui Song <i@maskray.me> |
rtld: Switch to the standard symbol lookup behavior if LD_DYNAMIC_WEAK is set The current lookup prefers a strong definition to a STB_WEAK definition (similar to glibc pre-2.2 behavior) which does not conform to the ELF specification. The non-compliant behavior provoked https://reviews.llvm.org/D4418 which was intended to fix -shared-libasan but introduced new problems (and caused some sanitizer tests (e.g. test/asan/TestCases/interception_failure_test.cpp) to fail): sanitizer interceptors are STB_GLOBAL instead of STB_WEAK, so defining a second STB_GLOBAL interceptor can lead to a multiple definition linker error. For example, in a -fsanitize={address,memory,...} build, libc functions like malloc/free/strtol/... cannot be provided by user object files. See https://docs.freebsd.org/cgi/getmsg.cgi?fetch=16483939+0+archive/2014/freebsd-current/20140716.freebsd-current for discussions. This patch implements the ELF-compliant behavior when LD_DYNAMIC_WEAK is set. STB_WEAK wrestling in symbol lookups in `Search the dynamic linker itself` are untouched. Reviewed by: kib MFC after: 1 week Differential revision: https://reviews.freebsd.org/D26352
|
#
e3149e0a |
|
02-Jun-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld: Rename -t option to -u (ignore LD_ vars) Requested by: arichardson Sponsored by: The FreeBSD Foundation MFC after: 3 days
|
#
d81f999a |
|
28-May-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld direct exec: add option to ignore LD_ variables Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
d36d6816 |
|
04-Apr-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld dl_iterate_phdr(): dlpi_tls_data is wrong dl_iterate_phdr() dlpi_tls_data should provide the TLS module segment address, and not the TLS init segment address as it does now. Reported by: emacsray@gmail.com PR: 254774 Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
e086aff9 |
|
24-Mar-2021 |
Mariusz Zaborski <oshogbo@FreeBSD.org> |
rtld: fix the man page In f90218886fc8 in man page I used LD_PRELOAD_PATH_FDS instead of LD_PRELOAD_FDS. Reported by: rpokala
|
#
f9021888 |
|
24-Mar-2021 |
Mariusz Zaborski <oshogbo@FreeBSD.org> |
rtld: introduce PRELOAD_FDS The new PRELOAD_FDS variable accepts a list of file descriptors that should be loaded into the process. This may be used to optimize a loading process - in the case when we already have a file descriptor to the library; we don't have to look into multiple PATH to find it. It may also be used in capability mode to load a single additional library without the need to open a directory that contains it. The last use of this functionality t may be a race-free method of loading libraries. Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D29334
|
#
812b0903 |
|
09-Oct-2020 |
Gordon Bergling <gbe@FreeBSD.org> |
Fix a few mandoc issues - whitespace at end of input line - skipping paragraph macro: Pp at the end of Sh - new sentence, new line - consider using OS macro: Fx - AUTHORS section without An macro - skipping paragraph macro: Pp before Ss
|
#
e82d1982 |
|
31-May-2020 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld: Add -b option to allow to specify image name different from arg0. Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
c8dd6c05 |
|
31-May-2020 |
Konstantin Belousov <kib@FreeBSD.org> |
rtld: Add -v switch to print some useful information about the rtld binary. Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
d89d5508 |
|
26-May-2020 |
Konstantin Belousov <kib@FreeBSD.org> |
Add version indicators to rtld. It is wrong to relate on __FreeBSD_version, either from include/param.h, kernel, or libc, to check for rtld features. Rtld might be from newer world than the running userspace. Add special private symbols exported by rtld itself, to indicate the changes in runtime behavior, and features that cannot be otherwise detected or deduced at runtime. Note that the symbols are not exported from libc, so they intentionally cannot be linked against, and exported from the private namespace from rtld. Consumers are required to use dlsym(3). For instance, for _rtld_version_laddr_offset, user should do ptr = dlsym(RTLD_DEFAULT, "_rtld_version_laddr_offset") or even ptr = dlvsym(RTLD_DEFAULT, "_rtld_version_laddr_offset", "FBSDprivate_1.0"); Non-null ptr means that the change is present. Also add _rtld_version__FreeBSD_version indicator to report the headers version used at time of the rtld build. Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D24982
|
#
cf551abc |
|
01-Sep-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Add serial comma. Submitted by: wblock MFC after: 3 days
|
#
9152cb38 |
|
14-Jul-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Language improvements. Submitted by: wblock MFC after: 3 days Differential revision: https://reviews.freebsd.org/D10826
|
#
109f3b8c |
|
29-May-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Document direct execution mode for rtld. Reviewed by: emaste, jonathan (previous version) Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D10826
|
#
18934eb6 |
|
29-May-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Correct explanation of the dynamic tokens handling. Reviewed by: emaste, jonathan Sponsored by: The FreeBSD Foundation X-Differential Revision: https://reviews.freebsd.org/D10826
|
#
dc902dbd |
|
17-May-2017 |
Jonathan Anderson <jonathan@FreeBSD.org> |
Fix some nroff syntax in rtld.1. When I originally documented the LD_LIBRARY_PATH_FDS environment variable, I used `.Ev` rather than `.It Ev` to introduce it; this led to the documentation being embedded in the previous paragraph (LD_LIBRARY_PATH).
|
#
2d6acb22 |
|
16-Mar-2017 |
Jilles Tjoelker <jilles@FreeBSD.org> |
rtld(1): Document that LD_BIND_NOT is unset for setugid processes. MFC after: 2 weeks
|
#
e35ddbe4 |
|
15-Mar-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Implement LD_BIND_NOT knob for rtld. From the manpage: When set to a nonempty string, prevents modifications of the PLT slots when doing bindings. As result, each call of the PLT-resolved function is resolved. In combination with debug output, this provides complete account of all bind actions at runtime. Same feature exists on Linux and Solaris. Sponsored by: The FreeBSD Foundation MFC after: 2 weeks
|
#
df2d82e0 |
|
23-Jun-2014 |
Joel Dahl <joel@FreeBSD.org> |
mdoc: remove superfluous paragraph macros.
|
#
02d3b38e |
|
20-Jun-2014 |
Jonathan Anderson <jonathan@FreeBSD.org> |
Add the LD_LIBRARY_PATH_FDS environmental variable. This variable allows the loading of shared libraries via directory descriptors rather than via library paths. If LD_LIBRARY_PATH_FDS=3:4:12, the directories represented by file descriptors 3, 4 and 12 will searched for shared libraries before the normal path-based mechanisms are used. This allows us to execute unprivileged binaries from within a Capsicum sandbox even if they require shared libraries. Approved by: rwatson (mentor) Reviewed by: kib MFC after: 3 weeks Sponsored by: DARPA/AFRL
|
#
bca2f623 |
|
15-Jul-2012 |
Konstantin Belousov <kib@FreeBSD.org> |
Import the DragonFly BSD commit 4f0bc915b65fcf5a23214f6d221d65c80be68ad4 by John Marino <draco@marino.st>, with the following (edited) commit message Date: Sat, 24 Mar 2012 06:40:50 +0100 Subject: [PATCH 1/1] rtld: Implement DT_RUNPATH and -z nodefaultlib DT_RUNPATH is incorrectly being considered as an alias of DT_RPATH. The purpose of DT_RUNPATH is to have two different types of rpath: one that can be overridden by the environment variable LD_LIBRARY_PATH and one that can't. With the currently implementation, LD_LIBRARY_PATH will always trump any embedded rpath or runpath tags. Current path search order by rtld: ================================== LD_LIBRARY_PATH DT_RPATH / DT_RUNPATH (always the same) ldconfig hints file (default: /var/run/ld-elf.so.hints) /usr/lib New path search order by rtld: ============================== DT_RPATH of the calling object if no DT_RUNPATH DT_RPATH of the main binary if no DT_RUNPATH and binary isn't calling obj LD_LIBRARY_PATH DT_RUNPATH ldconfig hints file /usr/lib The new path search matches how the linux runtime loader works. The other major added feature is support for linker flag "-z nodefaultlib". When this flag is passed to the linker, rtld will skip all references to the standard library search path ("/usr/lib" in this case but it could handle more color delimited paths) except in DT_RPATH and DT_RUNPATH. New path search order by rtld with -z nodefaultlib flag set: ============================================================ DT_RPATH of the calling object if no DT_RUNPATH DT_RPATH of the main binary if no DT_RUNPATH and binary isn't calling obj LD_LIBRARY_PATH DT_RUNPATH ldconfig hints file (skips all references to /usr/lib) FreeBSD notes: - we fixed some bugs which were submitted to DragonFly and merged there as commit 1ff8a2bd3eb6e5587174c6a983303ea3a79e0002; - we added LD_LIBRARY_PATH_RPATH environment variable to switch to the previous behaviour of considering DT_RPATH a synonym for DT_RUNPATH; - the FreeBSD default search path is /lib:/usr/lib and not /usr/lib. Reviewed by: kan MFC after: 1 month MFC note: flip the ld_library_path_rpath default value for stable/9
|
#
8569deaf |
|
25-Dec-2010 |
Konstantin Belousov <kib@FreeBSD.org> |
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)
|
#
a7d5f7eb |
|
19-Oct-2010 |
Jamie Gritton <jamie@FreeBSD.org> |
A new jail(8) with a configuration file, to replace the work currently done by /etc/rc.d/jail.
|
#
0d9deed5 |
|
07-Oct-2010 |
Ulrich Spörlein <uqs@FreeBSD.org> |
mdoc: drop redundant .Pp and .LP calls They have no effect when coming in pairs, or before .Bl/.Bd
|
#
fe0506d7 |
|
09-Mar-2010 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Create the altix project branch. The altix project will add support for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting is a two-module system, consisting of a base compute module and a CPU expansion module. SGI's NUMAFlex architecture can be an excellent platform to test CPU affinity and NUMA-aware features in FreeBSD.
|
#
b2e4ce45 |
|
01-Apr-2009 |
Konstantin Belousov <kib@FreeBSD.org> |
Document RTLD_NODELETE, -z nodelete and -z origin support.
|
#
569e2ef6 |
|
23-Mar-2009 |
Xin LI <delphij@FreeBSD.org> |
Support for a new environment variable, LD_ELF_HINTS_PATH for overriding the rtld hints file. This environment variable would be unset if the process is considered as tainted with setuid/setgid. This feature gives a convenient way of using a custom set of shared library that is not located in the default location and switch back. Feature requested by: iXsystems Original patch by: John Hixson MFC after: 2 weeks
|
#
d7f03759 |
|
19-Oct-2008 |
Ulf Lilleengen <lulf@FreeBSD.org> |
- Import the HEAD csup code which is the basis for the cvsmode work.
|
#
523b17ef |
|
15-May-2008 |
Bruce M Simpson <bms@FreeBSD.org> |
Make the meaning of the %A format specifier, as passed to LD_TRACE_LOADED_OBJECTS_FMT[12], more obvious for users like me.
|
#
b075897e |
|
17-May-2007 |
Christian S.J. Peron <csjp@FreeBSD.org> |
Update the man page to reflect that certain variables will be unset in the case that the program is set-user-ID or set-group-ID. Add missing annotations for LIBMAP and LIBMAP_DISABLE.
|
#
88922cf0 |
|
11-May-2007 |
Pav Lucistnik <pav@FreeBSD.org> |
Remove %m formatter, it's ifdef 0'ed in the code from the very beginning MFC after: 1 week
|
#
b9e1d83e |
|
11-May-2007 |
Pav Lucistnik <pav@FreeBSD.org> |
Expand documentation for LD_TRACE_LOADED_OBJECTS_FMT? variables PR: docs/66265 (inspired by) Submitted by: Michel Lavondes <fox@vader.aacc.cc.md.us> MFC after: 1 week
|
#
f0ac0f92 |
|
23-Jan-2007 |
John Baldwin <jhb@FreeBSD.org> |
Document LD_UTRACE. MFC after: 3 days
|
#
a3ec17db |
|
17-Sep-2006 |
Ruslan Ermilov <ru@FreeBSD.org> |
Markup fixes.
|
#
8a50f51b |
|
26-Mar-2006 |
Pav Lucistnik <pav@FreeBSD.org> |
- Document LD_32_* environment variables - Mention 32-bit files in FILES section MFC after: 1 week
|
#
cc4fdb1d |
|
14-Jun-2005 |
Ruslan Ermilov <ru@FreeBSD.org> |
Removed trailing whitespace. Approved by: re (blanket)
|
#
5b08cb04 |
|
03-Feb-2005 |
Matthew N. Dodd <mdodd@FreeBSD.org> |
Description from Dan: Another handy libmap patch. Lets you do stuff like this: LD_LIBMAP="libpthread.so.1=libthr.so.1" mythreadedapp If you already have a program-specific override in libmap.conf, note that you must use a program-specific override in LD_LIBMAP: LD_LIBMAP="[mythreadedapp],libpthread.so.1=libthr.so.1" mythreadedapp PR: bin/74471 Submitted by: Dan Nelson <dnelson AT allantgroup.com> MFC after: 2 weeks
|
#
ded0e523 |
|
18-Jun-2003 |
Matthew N. Dodd <mdodd@FreeBSD.org> |
LD_DUMP_REL_PRE and LD_DUMP_REL_POST don't output to stderr; don't claim that they do.
|
#
c5d061c1 |
|
18-Jun-2003 |
Matthew N. Dodd <mdodd@FreeBSD.org> |
Provide a mechanism for dumping relocation information. Setting the LD_DUMP_REL_PRE or LD_DUMP_REL_POST environment variables cause rtld-elf to output a table of all relocations. This is useful for debugging.
|
#
09f84dd1 |
|
02-Jun-2003 |
Ruslan Ermilov <ru@FreeBSD.org> |
Assorted mdoc(7) fixes.
|
#
4df60d1c |
|
31-May-2003 |
Matthew N. Dodd <mdodd@FreeBSD.org> |
Use the environment variable LD_LIBMAP_DISABLE to disable libmap.conf(5) functionality.
|
#
94deb3f0 |
|
17-May-2003 |
Robert Watson <rwatson@FreeBSD.org> |
Since libmap.conf is referenced in rtld.1, include it in the references section. Approved by: re (scottl)
|
#
60cdf2f1 |
|
16-May-2003 |
Ruslan Ermilov <ru@FreeBSD.org> |
mdoc(7) police: Normalize the FILES section. Approved by: re (blanket)
|
#
29ade362 |
|
07-Apr-2003 |
Matthew N. Dodd <mdodd@FreeBSD.org> |
Dynamic object dependency mapping: libmap. This is an optional feature, disabled by default. This will be useful to people testing the various POSIX threading libraries under -CURRENT but can easily serve other needs.
|
#
d9943f16 |
|
13-Feb-2003 |
Alexey Zelkin <phantom@FreeBSD.org> |
Advertize rtld(1) as ld.so(1) in manual pages world
|
#
8d5d039f |
|
12-Dec-2002 |
Ruslan Ermilov <ru@FreeBSD.org> |
Uniformly refer to a file system as "file system". Approved by: re
|
#
3f162cb8 |
|
06-Jul-2002 |
Philippe Charnier <charnier@FreeBSD.org> |
The .Nm utility
|
#
20249943 |
|
17-Feb-2002 |
David E. O'Brien <obrien@FreeBSD.org> |
Add support such that if LD_TRACE_LOADED_OBJECTS_ALL is defined to a non-empty string in the environment; we indicate which objects caused each object to be loaded. PR: 30908 Submitted-by: Mike Meyer <mwm@mired.org>
|
#
bcf2b1b3 |
|
10-Jan-2002 |
Ruslan Ermilov <ru@FreeBSD.org> |
mdoc(7) police: tidy up.
|
#
c4d9468e |
|
07-Aug-2001 |
Ruslan Ermilov <ru@FreeBSD.org> |
mdoc(7) police: Avoid using parenthesis enclosure macros (.Pq and .Po/.Pc) with plain text. Not only this slows down the mdoc(7) processing significantly, but it also has an undesired (in this case) effect of disabling hyphenation within the entire enclosed block.
|
#
0efe23d6 |
|
10-Jul-2001 |
Ruslan Ermilov <ru@FreeBSD.org> |
mdoc(7) police: removed HISTORY info from the .Os call.
|
#
70d51341 |
|
09-Jul-2001 |
Dima Dorfman <dd@FreeBSD.org> |
mdoc(7) police: remove extraneous .Pp before and/or after .Sh.
|
#
5521ff5a |
|
06-Jul-2001 |
Ruslan Ermilov <ru@FreeBSD.org> |
mdoc(7) police: sort SEE ALSO xrefs (sort -b -f +2 -3 +1 -2).
|
#
896eb7d1 |
|
16-Jan-2001 |
Ruslan Ermilov <ru@FreeBSD.org> |
Prepare for mdoc(7)NG.
|
#
58eaff23 |
|
20-Dec-2000 |
Ruslan Ermilov <ru@FreeBSD.org> |
Prepare for mdoc(7)NG.
|
#
cbe10916 |
|
30-Jun-2000 |
Sheldon Hearn <sheldonh@FreeBSD.org> |
Only punctuation is an allowed argument type for open-close macros such as Po/Pc, as explained by phantom. Reported by: billf
|
#
35add0e9 |
|
28-Mar-2000 |
Sheldon Hearn <sheldonh@FreeBSD.org> |
Cross-reference ldd(1) in rtld(1) and vice versa.
|
#
ea5cc7f1 |
|
28-Jan-2000 |
John Polstra <jdp@FreeBSD.org> |
Add a manual page for the ELF dynamic linker. I initially created rtld.1 by means of a repository copy from "src/libexec/rtld-aout/rtld.1". Then I edited it to make it (more) accurate for the ELF dynamic linker.
|
#
8bd2d9a0 |
|
27-Sep-1999 |
Alexey Zelkin <phantom@FreeBSD.org> |
.Nm += "rtld" apropos(1) now knows about rtld(1) manpage.
|
#
7f3dea24 |
|
27-Aug-1999 |
Peter Wemm <peter@FreeBSD.org> |
$Id$ -> $FreeBSD$
|
#
f6b31571 |
|
13-Sep-1997 |
Wolfram Schneider <wosch@FreeBSD.org> |
spelling corrections. PR: docs/4450 Submitted by: josh@quick.net
|
#
d5fb0dff |
|
27-May-1997 |
Masafumi Max NAKANE <max@FreeBSD.org> |
Typo fix. PR: 3693 Submitted by: Kazuo Horikawa <k-horik@yk.rim.or.jp>
|
#
fce15c9a |
|
22-Feb-1997 |
Peter Wemm <peter@FreeBSD.org> |
Revert $FreeBSD$ to $Id$
|
#
ac6c268b |
|
17-Jan-1997 |
John Polstra <jdp@FreeBSD.org> |
Pay attention to the environment variable "LD_IGNORE_MISSING_OBJECTS". If it is set to a nonempty string, then simply skip any missing shared libraries. This came up in a discussion long ago as a potentially useful feature at sysinstall time. For example, an X11 utility could be used without the X libraries being present, provided the utility had a mode in which no X functions were actually called.
|
#
1130b656 |
|
14-Jan-1997 |
Jordan K. Hubbard <jkh@FreeBSD.org> |
Make the long-awaited change from $Id$ to $FreeBSD$ This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
|
#
af202156 |
|
12-Jan-1997 |
Wolfram Schneider <wosch@FreeBSD.org> |
Sort cross references.
|
#
aeea55e4 |
|
11-Jan-1997 |
John Polstra <jdp@FreeBSD.org> |
Correct typos and spelling errors.
|
#
0db65949 |
|
11-Jan-1997 |
John Polstra <jdp@FreeBSD.org> |
Add support for the LD_BIND_NOW environment variable. If it is set to a nonempty string, then function calls are relocated at program start-up rather than lazily. This variable is standard on Sun and SVR4 systems. The dlopen() function now supports both lazy and immediate binding, as determined by its "mode" argument, which can be either 1 (RTLD_LAZY) or 2 (RTLD_NOW). I will add defines of these symbols to <dlfcn.h> as soon as I've done a little more checking to make sure they won't cause collisions or bootstrapping problems that would break "make world". The "LD_*" environment variables which alter dynamic linker behavior are now treated as unset if they are set to the empty string. This agrees with the standard SVR4 conventions for the dynamic linker. Add a work-around for programs compiled with certain buggy versions of crt0.o. The buggy versions failed to set the "crt_ldso" member of the interface structure. This caused certain error messages from the dynamic linker to begin with "(null)" instead of the pathname of the dynamic linker.
|
#
43d7fd03 |
|
26-Dec-1996 |
Steven Wallace <swallace@FreeBSD.org> |
Fix spelling error in manpage.
|
#
16804804 |
|
17-Oct-1996 |
John Polstra <jdp@FreeBSD.org> |
Fix two minor typos in the manual page.
|
#
5584286a |
|
30-Sep-1996 |
Peter Wemm <peter@FreeBSD.org> |
Update to handle new version ld.so.hints and info in executable for configurable fallback search paths, as well as new crt interface version. Also: - even faster getenv(), get all environment variable settings in a single pass. - ldd printf-like format specifications - minor code cleanups, one vsprintf -> vsnprintf (harmless) The library search sequence is a little more complete now. Before, it'd search $LD_LIBRARY_PATH (by opendir/readdir/closedir), then read the hints file, then read /usr/lib (again by scanning thr directory). It would then fail if there was no "found" library. Now, it does LD_LIBRARY_PATH and the hints file the same, but then uses a longer fallback path. The -R path is fetched from the executable if specified at build time, the ldconfig path is appended, and /usr/lib is appended to that. Duplicates are suppressed. This means that simply placing a new library in /usr/local/lib will work (the same as it did in /usr/lib) without needing ldconfig -m. It will find it quicker if the ldconfig is run though. Similar changes have been made to the NetBSD ld.so, but ours is rather different now due to John Polstra's speedups and fixes from a while back. The ldd printf-like format support came direct from NetBSD. Reviewed by: nate, jdp
|
#
e0e5145c |
|
23-Sep-1996 |
Wolfram Schneider <wosch@FreeBSD.org> |
add missing comma(s) in .Xr macros
|
#
dd2b0768 |
|
20-Apr-1996 |
John Polstra <jdp@FreeBSD.org> |
Implement support for LD_PRELOAD in the dynamic linker. Remove descriptions of LD_NO_INTERN_SEARCH and LD_NOSTD_PATH from the manual page, since they are not supported. Submitted by: Doug Ambrisko <ambrisko@ambrisko.roble.com>
|
#
c68c38c8 |
|
04-Oct-1995 |
Nate Williams <nate@FreeBSD.org> |
This is a FreeBSD manpage, not a NetBSD manpage. :)
|
#
19d57e6d |
|
26-Aug-1995 |
Joerg Wunsch <joerg@FreeBSD.org> |
Import Paul Kranenburg's man page for ld.so (aka. rtld). Obtained from: NetBSD
|