Allow PerLDAP to use OpenLDAP client libraries

RESOLVED FIXED

Status

Directory
PerLDAP
RESOLVED FIXED
7 years ago
7 years ago

People

(Reporter: nkinder, Assigned: nkinder)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

7 years ago
It would be good to allow PerLDAP to use the OpenLDAP client libraries beneath the covers instead of the Mozilla LDAP C SDK if one chooses.  This determination would have to be made at compile time as there are a good number of differences between the two APIs.
(Assignee)

Comment 1

7 years ago
Created attachment 460576 [details] [diff] [review]
Patch

This patch allows PerLDAP to be built against the OpenLDAP client libraries.  Due to a number of differences between the Mozilla LDAP C SDK and OpenLDAP APIs, the following PerLDAP stubs are no-ops or return errors when using OpenLDAP client libraries:

- ldap_create_filter
- ldap_free_friendlymap
- ldap_friendly_name
- ldap_getfilter_free
- ldap_getfirstfilter
- ldap_get_lang_values
- ldap_get_lang_values_len
- ldap_getnextfilter
- ldap_get_values
- ldap_init_getfilter
- ldap_init_getfilter_buf
- ldap_memcache_destroy
- ldap_memcache_flush
- ldap_memcache_get
- ldap_memcache_init
- ldap_memcache_set
- ldap_memcache_update
- ldap_parse_entrychange_control
- ldap_set_filter_additions
- ldap_version
- ldapssl_clientauth_init
- ldapssl_install_routines
- ldapssl_err2string
- ldapssl_set_strength
- prldap_install_routines
- prldap_set_session_option
Assignee: nobody → nkinder
Status: NEW → ASSIGNED

Comment 2

7 years ago
Comment on attachment 460576 [details] [diff] [review]
Patch

Looks good.  ack.
(Assignee)

Comment 3

7 years ago
Checked into devel-branch-1_4_2.  Thanks to Rich for his review!

Checking in API.xs;
/cvsroot/mozilla/directory/perldap/API.xs,v  <--  API.xs
new revision: 1.18.2.14; previous revision: 1.18.2.13
done
Checking in Conn.pm;
/cvsroot/mozilla/directory/perldap/Conn.pm,v  <--  Conn.pm
new revision: 1.24.2.18; previous revision: 1.24.2.17
done
Checking in Makefile.PL;
/cvsroot/mozilla/directory/perldap/Makefile.PL,v  <--  Makefile.PL
new revision: 1.16.2.16; previous revision: 1.16.2.15
done
Checking in constant.h;
/cvsroot/mozilla/directory/perldap/constant.h,v  <--  constant.h
new revision: 1.8.2.5; previous revision: 1.8.2.4
done
Status: ASSIGNED → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.