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
[email protected]
http://www.aleksey.com/mailman/listinfo/xmlsec
_______________________________________________
xmlsec mailing list
[email protected]
http://www.aleksey.com/mailman/listinfo/xmlsec

Reply via email to