diff options
author | Sam Hartman <hartmans@mit.edu> | 2006-01-29 21:14:03 +0000 |
---|---|---|
committer | Sam Hartman <hartmans@mit.edu> | 2006-01-29 21:14:03 +0000 |
commit | a177821837fb86d88e43e22b57767fd5ef2515fb (patch) | |
tree | 03ee11094af5f272f85dc3f8d76ad611f44c0df7 | |
parent | a46812b69fb353574c958396b26bce817d88e20f (diff) | |
download | krb5-hartmans/ldap-integ.tar.gz |
* Fix prototype of db2 library initializer to work with changes introduced in error handling patch.hartmans/ldap-integ
* 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
-rw-r--r-- | blocking-bugs | 6 | ||||
-rw-r--r-- | src/kadmin/server/Makefile.in | 2 | ||||
-rw-r--r-- | src/plugins/kdb/db2/ChangeLog | 4 | ||||
-rw-r--r-- | src/plugins/kdb/db2/db2_exp.c | 4 | ||||
-rw-r--r-- | src/plugins/kdb/kdb_ldap/ChangeLog | 8 | ||||
-rw-r--r-- | src/plugins/kdb/kdb_ldap/ldap_err.c | 4 | ||||
-rw-r--r-- | src/plugins/kdb/kdb_ldap/ldap_exp.c | 1 | ||||
-rw-r--r-- | src/plugins/kdb/kdb_ldap/ldap_principal2.c | 3 |
8 files changed, 27 insertions, 5 deletions
diff --git a/blocking-bugs b/blocking-bugs index 8b772cbef..60baef71a 100644 --- a/blocking-bugs +++ b/blocking-bugs @@ -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. diff --git a/src/kadmin/server/Makefile.in b/src/kadmin/server/Makefile.in index 5332acbb2..d6aa54a51 100644 --- a/src/kadmin/server/Makefile.in +++ b/src/kadmin/server/Makefile.in @@ -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) diff --git a/src/plugins/kdb/db2/ChangeLog b/src/plugins/kdb/db2/ChangeLog index c6461f9ad..93ca25a7e 100644 --- a/src/plugins/kdb/db2/ChangeLog +++ b/src/plugins/kdb/db2/ChangeLog @@ -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. diff --git a/src/plugins/kdb/db2/db2_exp.c b/src/plugins/kdb/db2/db2_exp.c index 35f700441..87e973eb4 100644 --- a/src/plugins/kdb/db2/db2_exp.c +++ b/src/plugins/kdb/db2/db2_exp.c @@ -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 index 000000000..7addb2fa7 --- /dev/null +++ b/src/plugins/kdb/kdb_ldap/ChangeLog @@ -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 + diff --git a/src/plugins/kdb/kdb_ldap/ldap_err.c b/src/plugins/kdb/kdb_ldap/ldap_err.c index acd9f0c0c..e10c5dbf0 100644 --- a/src/plugins/kdb/kdb_ldap/ldap_err.c +++ b/src/plugins/kdb/kdb_ldap/ldap_err.c @@ -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 diff --git a/src/plugins/kdb/kdb_ldap/ldap_exp.c b/src/plugins/kdb/kdb_ldap/ldap_exp.c index 2f921ca0d..b7bb08d24 100644 --- a/src/plugins/kdb/kdb_ldap/ldap_exp.c +++ b/src/plugins/kdb/kdb_ldap/ldap_exp.c @@ -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, diff --git a/src/plugins/kdb/kdb_ldap/ldap_principal2.c b/src/plugins/kdb/kdb_ldap/ldap_principal2.c index 652ec2173..3ae13397d 100644 --- a/src/plugins/kdb/kdb_ldap/ldap_principal2.c +++ b/src/plugins/kdb/kdb_ldap/ldap_principal2.c @@ -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 *); |