Bug 104691 - OpenLDAP re-entrant library is incomplete.
OpenLDAP re-entrant library is incomplete.
Status: CLOSED RAWHIDE
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: openldap (Show other bugs)
3.0
All Linux
high Severity high
: ---
: ---
Assigned To: Nalin Dahyabhai
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2003-09-19 02:27 EDT by Dennis
Modified: 2007-11-30 17:06 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2003-09-22 08:04:05 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Dennis 2003-09-19 02:27:28 EDT
Description of problem:

The taroon beta uses ldap version 2.0.27-9. With this version
the re-rentrant open ldap library /usr/lib/libldap_r.so is built
in such a way that the following functions are not exported

ldap_count_messages
ldap_count_references
ldap_first_message
ldap_first_reference
ldap_next_message
ldap_next_reference
ldap_parse_reference

The standard library /usr/lib/libldap.so is fine.

This can be seen by doing

%nm -D /usr/lib/libldap.so | grep ldap_count_messages
0000000000023a30 T ldap_count_messages
%nm -D /usr/lib/libldap_r.so | grep ldap_count_messages

This is a problem with the OpenLDAP build process. OpenLDAP
has corrected this with version 2.1.22

However it is unlikely at this late stage that Red Hat 
will use OpenLDAP 2.1.22 for Enterprise Linux 3.0

Solution:

We are hoping that Red Hat could fix the OpenLDAP
2.0.27-9 build process. The fix is very simple.

Before doing a configure the file

openldap-2.0.27/libraries/libldap_r/Makefile.in

should be edited.

Line 14 should change from

bind.c controls.c open.c result.c error.c compare.c search.c \

to

bind.c controls.c messages.c references.c open.c result.c error.c compare.c
search.c \

Line 30 should change from

bind.lo controls.lo open.lo result.lo error.lo compare.lo search.lo \

to

bind.lo controls.lo messages.lo references.lo open.lo result.lo error.lo
compare.lo search.lo \

Basically what is happening is that "messages" and "references" is
being added. With this minor change to the makefile.in file a
configure,make... build process will now generate a libldap_r.so
file that correctly exports all required ldap functionality.

With this minor change a correct re-entrant library will be generated.

If this fix could be done for EL 3.0 that would be fantastic.
Fingers crossed.

Dennis.
Comment 1 Nalin Dahyabhai 2003-09-19 17:13:05 EDT
Looks reasonable.  Changing for 2.0.27-11.
Comment 2 Dennis 2003-09-21 23:55:45 EDT
Thanks Nalin. This bug item can be closed.

Dennis.

Note You need to log in before you can comment on or make changes to this bug.