[xmlsec] ltdl problem on Solaris

Aleksey Sanin aleksey at aleksey.com
Thu Feb 24 16:34:28 PST 2011


Could you please make sure that all the libraries (xmlsec, libxml2, 
libxslt, openssl) are
compiled with -fPIC option?

Aleksey

On 2/23/11 4:39 PM, Russell Beall wrote:
> Thanks for the tips.
>
> With the sample code in place, the error message now looks like:
> func=xmlSecCryptoDLInit:file=dl.c:line=396:obj=unknown:subj=lt_dlinit:error=7:io function failed:invalid loader
> func=xmlSecInit:file=xmlsec.c:line=42:obj=unknown:subj=xmlSecCryptoDLInit:error=1:xmlsec library function failed:
>
> libltdl was freshly compiled and installed for use with this custom installation of various libraries for this project, and ldd seems to indicate that all the shared libraries are pointing to the correct libltdl.
>
> libtool is version 2.2 which creates libltdl.so.7.1.0
>
> I've noticed that the project file also links to libdl.so.  Could that be interfering?
>
> Russ.
>
> On Feb 23, 2011, at 4:23 PM, Roumen Petrov wrote:
>
>> Hi,
>>
>> Russell Beall wrote:
>>> Hi,
>>>
>>> I've been following this thread and I've been wondering if it is related to a problem I have been having for the past few days.  Usually I can hunt down the source of these types of issues, but this one defies all my attempts, and doesn't seem to be present in the FAQ or online searches.
>>>
>>> When running an initialization of the xmlsec library I get the following error:
>>> func=xmlSecCryptoDLInit:file=dl.c:line=389:obj=unknown:subj=lt_dlinit:error=7:io function failed:
>>> func=xmlSecInit:file=xmlsec.c:line=42:obj=unknown:subj=xmlSecCryptoDLInit:error=1:xmlsec library function failed:
>>>
>> May be with modification of xmlsec code to return ltdl error message diagnose will be simpler.
>> Lets check following part of code (dl.c):
>> ====
>> xmlSecError(XMLSEC_ERRORS_HERE,
>>                     NULL,
>>                     "lt_dlinit",
>>                     XMLSEC_ERRORS_R_IO_FAILED,
>>                     XMLSEC_ERRORS_NO_MESSAGE);
>> =====
>> XMLSEC_ERRORS_NO_MESSAGE is a macro that return " " .
>> It cannot be replaced by lt_dlerror() as function may return NULL and of solaris (10 until .....) xxxprintf will crash.
>> So a new function is required as example:
>> ========
>> static const char * xmlsec_lt_dleror(void);
>>
>> const char * xmlsec_lt_dleror() {
>>    const char *s = lt_dlerror();
>>    return s ? s : XMLSEC_ERRORS_NO_MESSAGE;
>> }
>> =========
>> and to replace XMLSEC_ERRORS_NO_MESSAGE with xmlsec_lt_dleror()
>>
>>> This happens on startup of the server, but somehow does not interfere with the operation of the server.  If I take out the call to xmlSecInit() then the server does not work.  I am concerned that if I use the server anyway, this is hinting at some more serious problem...
>>>
>> May be you could post issue to libtool list, i.e. authors .
>>
>>> I am running Solaris 10 with xmlsec 1.2.16.  I hit this problem when trying tp upgrade a batch of code from xmlsec 1.2.5
>>>
>> Just for protocol , could you post version of ltdl.
>>
>>> Thanks for any help,
>>> Russ.
>>>
>> [SNIP]
>>
>> Roumen
> _______________________________________________
> xmlsec mailing list
> xmlsec at aleksey.com
> http://www.aleksey.com/mailman/listinfo/xmlsec


More information about the xmlsec mailing list