On Sat, 30 May 2020 at 19:39, Konstantin Belousov <[email protected]> wrote:
>
> > It looks like GNU ld has done it since 2015 in fact. Further, glibc
> > will refuse to dlopen() an object with DF_1_PIE set, as of last June;
> > this seems like it would be a reasonable thing for us to do too.
> >
> > glibc bug for this: https://sourceware.org/bugzilla/show_bug.cgi?id=24323
>
> I can do it.  What if such object is referenced by DT_NEEDED ?

Hmm, good question.

glibc has the following comment where they disallow it:
> +    /* dlopen of an executable is not valid because it is not possible
> +       to perform proper relocations, handle static TLS, or run the
> +       ELF constructors.  For PIE, the check needs the dynamic
> +       section, so there is another check below.  */

I would suggest that if it's the case we cannot correctly dlopen or
handle a DT_NEEDED executable then we ought to fail.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to