dovecot-2.2: auth: If global passdb is missing, don't complain i...
dovecot at dovecot.org
dovecot at dovecot.org
Sun May 20 03:26:28 EEST 2012
details: http://hg.dovecot.org/dovecot-2.2/rev/8fb3fd391d18
changeset: 14346:8fb3fd391d18
user: Timo Sirainen <tss at iki.fi>
date: Thu Mar 15 12:59:41 2012 +0200
description:
auth: If global passdb is missing, don't complain if protocol x and !x { passdb } exists.
diffstat:
src/auth/auth.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diffs (38 lines):
diff -r c077ca9bc306 -r 8fb3fd391d18 src/auth/auth.c
--- a/src/auth/auth.c Wed Mar 14 16:24:05 2012 +0200
+++ b/src/auth/auth.c Thu Mar 15 12:59:41 2012 +0200
@@ -194,7 +194,6 @@
/* use a dummy userdb static. */
auth_userdb_preinit(auth, &userdb_dummy_set);
}
- auth_mech_list_verify_passdb(auth);
return auth;
}
@@ -251,9 +250,10 @@
{
struct master_service_settings_output set_output;
const struct auth_settings *service_set;
- struct auth *auth;
+ struct auth *auth, *const *authp;
unsigned int i;
const char *not_service = NULL;
+ bool check_default = TRUE;
i_array_init(&auths, 8);
@@ -274,6 +274,14 @@
auth = auth_preinit(service_set, services[i], pool, reg);
array_append(&auths, &auth, 1);
}
+
+ if (not_service != NULL && str_array_find(services, not_service+1))
+ check_default = FALSE;
+
+ array_foreach(&auths, authp) {
+ if ((*authp)->service != NULL || check_default)
+ auth_mech_list_verify_passdb(*authp);
+ }
}
void auths_init(void)
More information about the dovecot-cvs
mailing list