AT_EXECPATH aux_info vector contains path of interpreter when directly exec'ing rtld

Ed Maste emaste at freebsd.org
Fri Dec 20 22:03:15 UTC 2019


On Fri, 20 Dec 2019 at 16:26, Ryan Stone <rysto32 at gmail.com> wrote:
>
> I've noticed that on head, if I directly execute rtld to run an
> executable, AT_EXECPATH contains the path to rtld on head (on
> 12.0-RELEASE it will contain nothing).  This is causing me a problem
> because clang uses AT_EXECPATH to preferentially locate where it's
> installed, which it uses to locate its driver programs.

I have two questions, I suppose:

- What is the correct thing for AT_EXECPATH in light of fexecve rtld?
Arguably /libexec/ld-elf.so.1 is correct.

- What's the desired behaviour for Clang when run from ld-elf.so.1 -f fd?


More information about the freebsd-current mailing list