Simpler Navigation for Servers and Operating Systems
Completed: a much simpler Servers and Operating Systems section of the Community. We combined many of the older boards, so you won't have to click through so many levels to get at the information you need. Check the consolidated boards here as many sub-forums are now single boards.
Showing results for 
Search instead for 
Did you mean: 

patch for libdld

Occasional Contributor

patch for libdld


We are facing the webserver starting issue after deploying few web application. We have libsasl library which have dlopen defined in it , which intern has shl_load call and this shl_load is getting null input in one of its argument.
Now we want that our webserver should use the dlopen defined in system libraries like in libdld.

Please suggest is there any way we can bypass dlopen function of our library and let system library do that task.

Is there any libdld patch we can check for as we found same webserver working fine on some other machine.

All suggestion are welcome.
Looking forward for reply

Honored Contributor

Re: patch for libdld

I guess it is 11.11, this is a latest patch PHSS_33033,||&patchid=PHSS_33033&context=hpux:800:11:11

"A ship in the harbor is safe, but that is not what ships are built for"
Stephen Keane
Honored Contributor

Re: patch for libdld

The version of dlopen() used will depend on how the executable was linked. The first external symbol found matching the pattern for dlopen() will be linked in. The order the libraries is linked is important. I don't know whether that helps you, especially if you can't relink the executable.
ranganath ramachandra
Esteemed Contributor

Re: patch for libdld

you can either alter the linkline so that libdld appears precedes libsasl in the linkline:

cc ... -ldld ... -lsasl
ld ... -ldld ... -lsasl

or use LD_PRELOAD/LD_PRELOAD_ONCE at runtime:

env LD_PRELOAD=/usr/lib/ ./server

the first approach is recommended.

dlopen is available in 11.11/11.23 libdld. please use the latest linker/loader patches PHSS_33032(11.00)/PHSS_33033(11.11)/PHSS_33349(11.23).