This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: Handle DF_1_INTERPOSE


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

H. J. Lu wrote:

> With DF_1_INTERPOSE, it be changed to
> 
> 	call libc version

That's nonsense, we have no direct function calls.  All is done via
function pointers.

And you may not realize this, but what you propose is just another
argument against this option.  Suddenly a DSOs marked with it interposes
without possibility of reversal all call.  Note that this even applies
to DSOs  which are no direct dependencies, but indirect.  This makes it
completely invisible to the programmer.  And any late introduction of
this flag in a DSO changes the lookup scope so dramatically that
programs might completely fail to work.

LD_PRELOAD is only and exclusively a debugging or work-around tool.  It
must not be used as a permanent solution.  The same applies to this
flag, only it is much more severe since it affects all uses.

For me this chapter is closed: the flag has far too many problems, is
ill-specified and generally ill-designed.

Any code which needs hacks like this is severely broken and needs to be
redesigned.

- -- 
- --------------.                        ,-.            444 Castro Street
Ulrich Drepper \    ,-----------------'   \ Mountain View, CA 94041 USA
Red Hat         `--' drepper at redhat.com `---------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+2ZSp2ijCOnn/RHQRAjW0AKCmwjS6dkEBGpDGZSDRRxFGsNVtGgCeP3tn
pxN8sSOpgmH8TDtCsuhJm5k=
=l/bY
-----END PGP SIGNATURE-----


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]