From 209521323f731daad54682fd98715f7b22c88c78 Mon Sep 17 00:00:00 2001 From: Rich Megginson Date: Mon, 6 Jul 2009 12:11:01 -0600 Subject: OpenLDAP support These changes allow the server to be built with OpenLDAP (2.4.17+). A brief summary of the changes: * #defines not provided by OpenLDAP were copied into slapi-plugin.h and protected with #ifndef blocks * where it made sense, I created slapi wrapper functions for things like URL and LDIF processing to abstract way the differences in the APIs * I created a new file utf8.c which contains the UTF8 functions from MozLDAP - this is only compiled when using OpenLDAP * I tried to clean up the code - use the _ext versions of LDAP functions everywhere since the older versions should be considered deprecated * I removed some unused code NOTE that this should still be considered a work in progress since it depends on functionality not yet present in a released version of OpenLDAP, for NSS crypto and for the LDIF public API. --- lib/ldaputil/cert.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'lib/ldaputil/cert.c') diff --git a/lib/ldaputil/cert.c b/lib/ldaputil/cert.c index ceb57118..30fd0f4b 100644 --- a/lib/ldaputil/cert.c +++ b/lib/ldaputil/cert.c @@ -55,6 +55,8 @@ #include #include "ldaputili.h" +#include "slapi-plugin.h" + NSAPI_PUBLIC int ldapu_get_cert (void *SSLendpoint, void **cert) { /* TEMPORARY -- not implemented yet*/ @@ -209,7 +211,7 @@ _rdns_free (char*** rdns) { auto char*** rdn; for (rdn = rdns; *rdn; ++rdn) { - ldap_value_free (*rdn); + slapi_ldap_value_free (*rdn); } free (rdns); } @@ -230,12 +232,12 @@ _explode_dn (const char* dn) if (exp) { exp[expLen++] = avas; } else { - ldap_value_free (avas); + slapi_ldap_value_free (avas); break; } } else { /* parse error */ if (avas) { - ldap_value_free (avas); + slapi_ldap_value_free (avas); } if (exp) { exp[expLen] = NULL; @@ -248,7 +250,7 @@ _explode_dn (const char* dn) if (exp) { exp[expLen] = NULL; } - ldap_value_free (rdns); + slapi_ldap_value_free (rdns); } } return exp; -- cgit