Subject: bug#35245: libltdl.so uses 32-bit search path in 64-bit mode in Solaris 11.4

From: Bob Friesenhahn <[email-masked]>
Date: Wed, 24 Apr 2019 16:39:30 -0500 (CDT)

On Fri, 12 Apr 2019, Vita Batrla wrote:

> Hi all,
>
> I noticed that 64-bit version of libtool's libltdl.so shipped in Solaris 11.4
> is compiled with 32-bit search path. This mismatch leads causes a failure to
> dynamically load a module using lt_dlopen() interface.
>
> Here's an example of a 64-bit executable trying to dynamically load
> "libcrypt.so":

I agree with your problem statement and your patch, but would like to 
point out that loading a bare module name without a specified path is 
somewhat insecure and not a recommended use case.

I do not recall similar problems with failing to find 64-bit modules 
on my Solaris (and Solaris-derived) systems, but my software stores 
modules in a directory with a well defined path (a wise thing to do) 
and opens the ".la" module wrapper file via that path.  The libraries 
listed in the ".la" module are then loaded as expected.

In the mean time, Oracle could fix the libltdl.so shipped in Solaris 
11.4.

Bob
-- 
Bob Friesenhahn
[email-masked], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/
Public Key,     http://www.simplesystems.org/users/bfriesen/public-key.txt