char *match_entry,
int (*func) (krb5_pointer, krb5_db_entry *),
krb5_pointer func_arg );
-krb5_error_code krb5_supported_realms ( krb5_context kcontext,
- char **realms );
-krb5_error_code krb5_free_supported_realms ( krb5_context kcontext,
- char **realms );
krb5_error_code krb5_db_set_master_key_ext ( krb5_context kcontext,
char *pwd,
krb5_keyblock *key );
* DAL. It is passed to init_library to allow KDB modules to detect when
* they are being loaded by an incompatible version of the KDC.
*/
-#define KRB5_KDB_DAL_VERSION 20100701
+#define KRB5_KDB_DAL_VERSION 20100702
/*
* A krb5_context can hold one database object. Modules should use
/* Optional: Free a policy entry returned by db_get_policy. */
void (*db_free_policy)(krb5_context kcontext, osa_policy_ent_t val);
- /*
- * Optional: Fill in *realms with an array of realm names. This function
- * is not used or implemented.
- */
- krb5_error_code (*db_supported_realms)(krb5_context kcontext,
- char **realms);
-
- /* Optional: Free a realm list returned by db_supported_realms. */
- krb5_error_code (*db_free_supported_realms)(krb5_context kcontext,
- char **realms);
-
/*
* Optional: Convert an error code returned by a module function (casted
* from krb5_error_code to long) into a string. If this function is
return status;
}
-krb5_error_code
-krb5_supported_realms(krb5_context kcontext, char **realms)
-{
- krb5_error_code status = 0;
- kdb_vftabl *v;
-
- status = get_vftabl(kcontext, &v);
- if (status)
- return status;
- if (v->db_supported_realms == NULL)
- return KRB5_KDB_DBTYPE_NOSUP;
- status = v->db_supported_realms(kcontext, realms);
- get_errmsg(kcontext, status);
- return status;
-}
-
-krb5_error_code
-krb5_free_supported_realms(krb5_context kcontext, char **realms)
-{
- krb5_error_code status = 0;
- kdb_vftabl *v;
-
- status = get_vftabl(kcontext, &v);
- if (status)
- return status;
- if (v->db_free_supported_realms == NULL)
- return KRB5_KDB_DBTYPE_NOSUP;
- status = v->db_free_supported_realms(kcontext, realms);
- get_errmsg(kcontext, status);
- return status;
-}
-
krb5_error_code
krb5_db_set_master_key_ext(krb5_context kcontext,
char *pwd, krb5_keyblock * key)
/* db_iter_policy */ wrap_krb5_db2_iter_policy,
/* db_delete_policy */ wrap_krb5_db2_delete_policy,
/* db_free_policy */ wrap_krb5_db2_free_policy,
- /* db_supported_realms */ NULL,
- /* db_free_supported_realms */ NULL,
/* errcode_2_string */ NULL,
/* release_errcode_string */ NULL,
/* db_alloc */ krb5_db2_alloc,
/* db_iter_policy */ krb5_ldap_iterate_password_policy,
/* db_delete_policy */ krb5_ldap_delete_password_policy,
/* db_free_policy */ krb5_ldap_free_password_policy,
- /* db_supported_realms */ krb5_ldap_supported_realms,
- /* db_free_supported_realms */ krb5_ldap_free_supported_realms,
/* errcode_2_string */ krb5_ldap_errcode_2_string,
/* release_errcode_string */ krb5_ldap_release_errcode_string,
/* db_alloc */ krb5_ldap_alloc,
krb5_error_code
krb5_ldap_unlock( krb5_context );
-krb5_error_code
-krb5_ldap_supported_realms( krb5_context, char ** );
-
-krb5_error_code
-krb5_ldap_free_supported_realms( krb5_context, char ** );
-
const char *
krb5_ldap_errcode_2_string( krb5_context, long );
return status;
}
-krb5_error_code
-krb5_ldap_supported_realms(krb5_context kcontext, char **realms)
-{
- krb5_error_code status = KRB5_PLUGIN_OP_NOTSUPP;
- krb5_set_error_message(kcontext, status, "LDAP %s", error_message(status));
- return status;
-}
-
-krb5_error_code
-krb5_ldap_free_supported_realms(krb5_context kcontext, char **realms)
-{
- krb5_error_code status = KRB5_PLUGIN_OP_NOTSUPP;
- krb5_set_error_message(kcontext, status, "LDAP %s", error_message(status));
- return status;
-}
-
const char *
krb5_ldap_errcode_2_string(krb5_context kcontext, long err_code)
{
krb5_ldap_delete_realm_1
krb5_ldap_lock
krb5_ldap_unlock
-krb5_ldap_supported_realms
-krb5_ldap_free_supported_realms
krb5_ldap_errcode_2_string
krb5_ldap_release_errcode_string
krb5_ldap_create