]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
* Fix prototype of db2 library initializer to work with changes introduced in error... hartmans/ldap-integ
authorSam Hartman <hartmans@mit.edu>
Sun, 29 Jan 2006 21:14:03 +0000 (21:14 +0000)
committerSam Hartman <hartmans@mit.edu>
Sun, 29 Jan 2006 21:14:03 +0000 (21:14 +0000)
* Remove thread safety flag from the LDAP plugin vftable
* Work around LDAP_X_ERROR not being in all version of OpenLDAP
* Work around older OpenLDAP using ldap_opt_error_number not ldap_opt_result_code
* Source is in SRCTOP not BUILDTOP; kadmin/server got this wrong.
* Document more blocking bugs

git-svn-id: svn://anonsvn.mit.edu/krb5/users/hartmans/ldap-integ@17633 dc483132-0cff-0310-8789-dd5450dbe970

blocking-bugs
src/kadmin/server/Makefile.in
src/plugins/kdb/db2/ChangeLog
src/plugins/kdb/db2/db2_exp.c
src/plugins/kdb/kdb_ldap/ChangeLog [new file with mode: 0644]
src/plugins/kdb/kdb_ldap/ldap_err.c
src/plugins/kdb/kdb_ldap/ldap_exp.c
src/plugins/kdb/kdb_ldap/ldap_principal2.c

index 8b772cbefdcccfacaee09c1bb759979e1a739dd0..60baef71a0c4fa413f31bbc26d31bc4bd40386a5 100644 (file)
@@ -13,7 +13,7 @@ specific data is OK.
 * --with-ldap needs to be carefully considered; is OPENLDAP upper case really correct? Consider GCS and other  options we already use.
 
 
-* kdc, kadmin/ldap_util, lib/kadm5/clnt/ wants err_handle.h from lib/kdb.  This seems
+* kdc, kadmin/server kadmin/ldap_util, lib/kadm5/clnt/ wants err_handle.h from lib/kdb.  This seems
 wrong and should probably be fixed either by installing that header in
 buildtop/include or something.
 
@@ -26,3 +26,7 @@ doesn't mess things up too much.
 
 * I've told the kadmin client to link against -lkdb5 as a hack.
 That's clearly wrong but is because of brokenness in kadm5/clnt.
+
+* The ldap plugin also serves as a library for its administrative
+interface.  Determine if this is OK; I expect it to create load
+problems as the plugin directory should not be on the search path.
index 5332acbb221eb2cbd43c6c190afba914a53805cd..d6aa54a511c089e8f1f8b82a86f642bf48039b1e 100644 (file)
@@ -6,7 +6,7 @@ KDB_DEP_LIB=$(DL_LIB) $(THREAD_LINKOPTS)
 
 LOCALINCLUDES = -I$(SRCTOP)/lib/gssapi/generic -I$(SRCTOP)/lib/gssapi/krb5 \
        -I$(BUILDTOP)/lib/gssapi/generic -I$(BUILDTOP)/lib/gssapi/krb5 \
-       -I$(BUILDTOP)/lib/kdb
+       -I$(SRCTOP)/lib/kdb
 
 PROG_LIBPATH=-L$(TOPLIBD)
 PROG_RPATH=$(KRB5_LIBDIR)
index c6461f9ad8fc1ec494e070477c03fc7e4587882d..93ca25a7e28d559183449bf7797edb40c60e949b 100644 (file)
@@ -1,3 +1,7 @@
+2006-01-29  Sam Hartman  <hartmans@mit.edu>
+
+       * db2_exp.c (hack_init): Update prototype to match krb5_db2_lib_init
+
 2006-01-25  Ken Raeburn  <raeburn@mit.edu>
 
        * Makefile.in (DEFINES): New variable; define macro PLUGIN.
index 35f7004414a1beb110e4705ff0936a4b4ca5b9d9..87e973eb49b2aa88952f82e937bdd48e887081f2 100644 (file)
@@ -193,13 +193,13 @@ WRAP_K (krb5_db2_db_get_mkey,
        (context, key));
 
 static krb5_error_code
-hack_init (krb5_set_err_func_t f)
+hack_init ()
 {
     krb5_error_code c;
     c = krb5int_mutex_alloc (&krb5_db2_mutex);
     if (c)
        return c;
-    return krb5_db2_lib_init (f);
+    return krb5_db2_lib_init ();
 }
 
 static krb5_error_code
diff --git a/src/plugins/kdb/kdb_ldap/ChangeLog b/src/plugins/kdb/kdb_ldap/ChangeLog
new file mode 100644 (file)
index 0000000..7addb2f
--- /dev/null
@@ -0,0 +1,8 @@
+2006-01-29  Sam Hartman  <hartmans@mit.edu>
+
+       * ldap_exp.c (krb5_db_vftabl_kldap): Remove thread safe flag
+
+       * ldap_err.c: Ignore LDAP_X_ERROR if not supported by version of OpenLDAP in use
+
+       * ldap_principal2.c: Accept LDAP_OPT_ERROR_NUMBER as a less-preferred synonym for LDAP_OPT_RESULT_CODE
+
index acd9f0c0ccc64d6cbc004da3bcc1f8996c0ba8ec..e10c5dbf0ed0841d369acb68a45501f561d1e35d 100644 (file)
@@ -2,6 +2,10 @@
 #include <errno.h>
 #include <kdb5_err.h>
 #include "ldap_err.h"
+#ifndef LDAP_X_ERROR
+#define LDAP_X_ERROR(x) (0)
+#endif
+
 
 /*
  * The possible KDB errors are
index 2f921ca0d75e49774b38c1b30f6f1dd472c8bd5c..b7bb08d240ce824e79cbb08484bc50c6fc147b50 100644 (file)
@@ -48,7 +48,6 @@
 kdb_vftabl krb5_db_vftabl_kldap = {
   1,                                      /* major version number 1 */
   0,                                      /* minor version number 0 */
-  0,                                      /* TBD. Not sure whether thread safe. For now, its not */
   /* init_library */                          krb5_ldap_lib_init,
   /* fini_library */                          krb5_ldap_lib_cleanup,
   /* init_module */                           krb5_ldap_open,
index 652ec2173038dce9a11d5c56858e1dc1efa7390d..3ae13397d1063dd84c073642c697b6c0b8b06245 100644 (file)
@@ -40,6 +40,9 @@
 
 extern char* principal_attributes[];
 extern char* max_pwd_life_attr[];
+#if !defined( LDAP_OPT_RESULT_CODE) && defined(LDAP_OPT_ERROR_NUMBER)
+#define LDAP_OPT_RESULT_CODE LDAP_OPT_ERROR_NUMBER
+#endif
 
 static krb5_error_code
 krb5_decode_krbsecretkey(krb5_context, krb5_db_entry *, struct berval **, krb5_tl_data *);