mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Colin Cross <ccross@google.com>
To: noloader@gmail.com
Cc: Rich Felker <dalias@libc.org>, musl@lists.openwall.com
Subject: Re: [musl] [PATCH] dl_iterate_phdr: return empty string for the name of the main program
Date: Mon, 11 Apr 2022 08:52:15 -0700	[thread overview]
Message-ID: <CAMbhsRTZ=8S+oMOi4nuyD2h53ODPCj+SVB-2ng_s=kiCGBZ2HQ@mail.gmail.com> (raw)
In-Reply-To: <CAH8yC8k=r6HoYcx0FCi_z5377tTYNWenhY7867oDyY4N2+Tmcw@mail.gmail.com>

On Mon, Apr 11, 2022 at 7:03 AM Jeffrey Walton <noloader@gmail.com> wrote:
>
> On Mon, Apr 11, 2022 at 8:42 AM Rich Felker <dalias@libc.org> wrote:
> >
> > On Mon, Apr 11, 2022 at 08:24:21AM -0400, Jeffrey Walton wrote:
> > > On Mon, Apr 4, 2022 at 11:57 PM Michael Forney <mforney@mforney.org> wrote:
> > > >
> > > >  ...
> > > > > Use a constant empty string instead of the DSO name field for the first
> > > > > entry in the DSO list.
> > > >
> > > > I believe glibc is the exception here, not musl. When I looked at
> > > > this, every other operating system I tried used the program name for
> > > > the first object.
> > >
> > > I may be splitting hairs, but the dl_iterate_phdr(3) man page does not
> > > say a program is returned during the enumeration. It says shared
> > > objects are returned.
> >
> > You are. The intent, actual practice -- and absolute necessity for
> > this function to serve its purpose, which includes admiting the
> > implementation of exception handling -- is that it be included. And in
> > this context, the (dynamic linked) program *is* a shared object.
>
> I think you are conflating ET_DYN with a shared object. The presence
> of ET_DYN does not make a program a shared object, it merely means the
> object is relocatable (i.e., position independent code).
>
> Jeff

From further down in the same man page:

       The first object visited by callback is the main  program.
For  the  main  program,  the
       dlpi_name field will be an empty string.

In any case, the motivation for this patch was for compatibility with
LLVM's ASAN runtime, which has now been fixed to remove the empty name
assumption by Michael's resubmitted patch at
https://reviews.llvm.org/D119515, so this patch is no longer
necessary.

  parent reply	other threads:[~2022-04-11 15:52 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-05  3:18 Colin Cross
2022-04-05  3:57 ` Michael Forney
2022-04-11 12:24   ` Jeffrey Walton
2022-04-11 12:42     ` Rich Felker
2022-04-11 14:03       ` Jeffrey Walton
2022-04-11 14:58         ` Rich Felker
2022-04-11 15:52         ` Colin Cross [this message]
2022-04-11 12:46     ` Florian Weimer
2022-04-05  4:43 ` Markus Wichmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAMbhsRTZ=8S+oMOi4nuyD2h53ODPCj+SVB-2ng_s=kiCGBZ2HQ@mail.gmail.com' \
    --to=ccross@google.com \
    --cc=dalias@libc.org \
    --cc=musl@lists.openwall.com \
    --cc=noloader@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).