[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: 2.4.30 - libldap & libldap_r do not coexist

I'm experiencing the following problem on CentOS6 - although I've not tested on other Os'es.

On the same machine I've tested following combinations of client & server versions :
Client=2.4.23,  Server=2.4.30,  Crash=No
Client=2.4.30,  Server=2.4.23, Crash=Yes

So I believe the problem lies in 2.4.30 client libraries which I have compiled.
However I'm not able to find something from Changelog related to this.
I'll now gdb my program and see if I get anything.

Till then does anybody have any idea abt the prb?


----- Original Message -----

From: Amol Kulkarni

Sent: 03/24/12 04:27 PM

To: Openldap-technical

Subject: 2.4.30 - libldap & libldap_r do not coexist

I've a program which links to both libldap & libldap_r dynamically. I've been running this program with openldap 2.4.23 without any problem. But when I upgraded to openldap 2.4.30, the program crashes with segfault. The crash occurs at the end when the program is closing connections. I googled and found that libldap & libldap_r should not be used in same process space bcos they one is non-threadsafe and other is threadsafe and they have same symbols. It is difficult for me to solve the problem by changing my compile configuration bcos my program loads 2 third party libraries which load these different versions of ldaplibraries.

One solution for me is to make a soft link from libldap to libldap_r, i.e make everyone use the threadsafe library. Would it be create any problems ?

Also, can anyone tell why I did not face the problem in 2.4.23 - I mean is there any compile time setting in openldap for this - which I've missed in 2.4.30 ?

Thanks and Regards,
Amol Kulkarni.