This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH][v3] Add dynamic linker support for $EXEC_ORIGIN.
- From: Brooks Moses <bmoses at google dot com>
- To: "Carlos O'Donell" <carlos at redhat dot com>
- Cc: libc-alpha <libc-alpha at sourceware dot org>, Mike Frysinger <vapier at gentoo dot org>, Paul Pluzhnikov <ppluzhnikov at google dot com>
- Date: Sun, 30 Mar 2014 22:11:47 -0700
- Subject: Re: [PATCH][v3] Add dynamic linker support for $EXEC_ORIGIN.
- Authentication-results: sourceware.org; auth=none
- References: <201312230251 dot 18192 dot vapier at gentoo dot org> <1387827972-25784-1-git-send-email-bmoses at google dot com> <5338BCDF dot 5020807 at redhat dot com>
On Sun, Mar 30, 2014 at 5:54 PM, Carlos O'Donell <carlos@redhat.com> wrote:
> On 12/23/2013 02:46 PM, Brooks Moses wrote:
> > Updated to include Mike Frysinger's comments, as below. Mike suggests
> > that this still needs signoff from someone more familiar with the ld.so
> > code; any volunteers?
>
> I've finally worked the patcwork queue down to this path :-)
Thanks! (And congratulations on getting the queue reduced that much!)
> You're going to end up with at least one more iteration, because I'd
> like to see documentation of $EXEC_ORIGIN in the glibc manual.
[...]
Will do, along with filing the Bugzilla entry as you requested below.
> Why is this what you want? What is wrong with the path encoding effectively
> arbitrary storage data? I still don't see what problem you're trying to
> solve by using $EXEC_ORIGIN. Can you walk me through an example execution
> sequence that shows how you would use this?
>
> I promise you I'm not trying to block this patch for no reason, but
> I have an 8 month old, and I don't get much sleep, so many explanations
> need to be dumbed down for me or explained twice.
>
> Roland has also expressed his worry that we don't really understand the
> problem that this is meant to solve, and I am in agreement for now.
Yup, I fully agree it's a fair request. I see that Paul has already
replied. (Thanks, Paul! I was meaning to get around to it but last
week was a busy week.)
I'll just add that we've been using a variant of this patch internally
for a couple of years now. I had to rewrite the get_directory
function -- the old one used readlink() to canonicalize the directory
name, and that stopped working in the loader in a recent glibc version
-- but the rest of the patch is pretty much exactly what we've been
using.
The x86_64 testsuite was indeed clean with no regressions when I last
tested it, and I'll reconfirm that after rebasing it and addressing
your comments.
- Brooks