From 075a38196360a192b58e62633d1d5f9522e82d86 Mon Sep 17 00:00:00 2001 From: Marco Bettini Date: Wed, 20 Mar 2024 11:42:33 +0000 Subject: [PATCH] auth: ldap - Use passdb_default_pass_scheme from auth_passdb --- src/auth/db-ldap-settings.c | 8 ++++++-- src/auth/db-ldap-settings.h | 2 -- src/auth/passdb-ldap.c | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/auth/db-ldap-settings.c b/src/auth/db-ldap-settings.c index 9d1aabc62d..77e0aa3b76 100644 --- a/src/auth/db-ldap-settings.c +++ b/src/auth/db-ldap-settings.c @@ -40,7 +40,6 @@ static const struct setting_define ldap_setting_defines[] = { DEF(STR, pass_filter), DEF(STR, iterate_attrs), DEF(STR, iterate_filter), - DEF(STR, default_pass_scheme), DEF(BOOL, blocking), SETTING_DEFINE_LIST_END }; @@ -68,16 +67,21 @@ static const struct ldap_settings ldap_default_settings = { .pass_filter = "(&(objectClass=posixAccount)(uid=%u))", .iterate_attrs = "uid=user", .iterate_filter = "(objectClass=posixAccount)", - .default_pass_scheme = "crypt", .blocking = FALSE }; +static const struct setting_keyvalue ldap_default_settings_keyvalue[] = { + { "passdb_ldap/passdb_default_password_scheme", "crypt" }, + { NULL, NULL } +}; + const struct setting_parser_info ldap_setting_parser_info = { .name = "auth_ldap", .check_func = ldap_setting_check, .defines = ldap_setting_defines, .defaults = &ldap_default_settings, + .default_settings = ldap_default_settings_keyvalue, .struct_size = sizeof(struct ldap_settings), .pool_offset1 = 1 + offsetof(struct ldap_settings, pool), diff --git a/src/auth/db-ldap-settings.h b/src/auth/db-ldap-settings.h index f9d80cb050..0052229f14 100644 --- a/src/auth/db-ldap-settings.h +++ b/src/auth/db-ldap-settings.h @@ -27,8 +27,6 @@ struct ldap_settings { const char *iterate_attrs; const char *iterate_filter; - const char *default_pass_scheme; - unsigned int version; uid_t uid; diff --git a/src/auth/passdb-ldap.c b/src/auth/passdb-ldap.c index 1a8a896fee..a1cdb101b8 100644 --- a/src/auth/passdb-ldap.c +++ b/src/auth/passdb-ldap.c @@ -43,6 +43,7 @@ ldap_query_save_result(struct ldap_connection *conn, struct ldap_request_search *ldap_request, LDAPMessage *res) { + struct passdb_module *_module = auth_request->passdb->passdb; struct db_ldap_result_iterate_context *ldap_iter; const char *name, *const *values; @@ -58,7 +59,7 @@ ldap_query_save_result(struct ldap_connection *conn, "using value '%s'", name, values[0]); } auth_request_set_field(auth_request, name, values[0], - conn->set->default_pass_scheme); + _module->default_pass_scheme); } db_ldap_result_iterate_deinit(&ldap_iter); } @@ -471,7 +472,6 @@ static int passdb_ldap_preinit(pool_t pool, struct event *event, t_strconcat(conn->set->base, conn->set->pass_attrs, conn->set->pass_filter, NULL)); - module->module.default_pass_scheme = conn->set->default_pass_scheme; *module_r = &module->module; return 0; } -- 2.47.3