[Bug 187114] rtld(1) does not expand $ORIGIN unless DF_ORIGIN flag is set

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Apr 25 00:55:47 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=187114

--- Comment #3 from Ed Maste <emaste at freebsd.org> ---
It turns out I had a conclusive answer on this a couple of months ago, but
unfortunately forgot about it:

> Ed is correct.   The handling of ${ORIGIN} was introduced the Generic
> Application Binary Interface by July of 2000.
>
> The DF_ORIGIN is only necessary if the a.out does not use ${ORIGIN} in a 
> DT_NEEDED or DT_RUNPATH tag. and expects or anticipates that a $ORIGIN 
> may be encountered later in the execution such as a dlopen() call.   
> DF_ORIGIN was provided as a means of insuring correct results in these 
> delayed pathname resolutions without requiring every a.out to incur the 
> cost of a realpath() for its true location when started.

http://lists.cs.uiuc.edu/pipermail/lldb-dev/2014-February/003428.html

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list