This is the mail archive of the 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] ppc64 LD_PRELOAD tolerance

Ulrich Drepper writes:

> No.  We are not going to add an own programming language to the
> LD_PRELOAD handling.  If you need a DSO only for 32-bit create a dummy
> for 64-bit.  This is no problem since LD_PRELOAD should never be used
> lightly; it should always and only be used in invocations of one
> program.  It mustn't be in the environment and exported.  LD_PRELOAD is
> means for temporary work arounds and testing etc.  If you need it to get
> a program running write a shell script wrapper which uses LD_PRELOAD.
> But that's it.

I wish things where that simple. For example consider the following exerpt
form doc/README.socksify in the dante package:

   $Id: README.socksify,v 1.4 1999/04/26 13:52:33 michaels Exp $

   The shell script socksify in the bin directory is meant to aid in
   using socks with already compiled dynamic binaries.  This works by
   setting the LD_PRELOAD environment variable to libdsocks.  It will
   then wrap all networking-related system calls.

   When used the script can socksify a program by simply giving it as a
   parameter to socksify:

   socksify ftp

   A more permanent solution would be to add the LD_PRELOAD environment
   value to the shell startup files.  Then all non-set[ug]id applications
   that are linked dynamically would be socksified.

Lots of people do this. And as is this prevents the execution of the other
mode for biarch systems (like PPC32/.PPC64). We need a solution.

Is your objection to just the embellishments I offered or to Roland's
suggestion ($LIB dynamic symbol) as well. It seems that your suggestion to
"create a dummy for 64-bit" only works when something in the path splits
the 32- 64-bit libraries (as the files names must be the same).

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