dovecot-2.0: mail storage service: mail_debug=yes now logs what ...
dovecot at dovecot.org
dovecot at dovecot.org
Tue Mar 9 16:36:34 EET 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/2d082200657d
changeset: 10880:2d082200657d
user: Timo Sirainen <tss at iki.fi>
date: Tue Mar 09 16:36:32 2010 +0200
description:
mail storage service: mail_debug=yes now logs what happens to userdb settings.
diffstat:
src/lib-storage/mail-storage-service.c | 31 +++++++++++++++++++++----------
1 files changed, 21 insertions(+), 10 deletions(-)
diffs (85 lines):
diff -r ce166f70ea71 -r 2d082200657d src/lib-storage/mail-storage-service.c
--- a/src/lib-storage/mail-storage-service.c Tue Mar 09 16:24:57 2010 +0200
+++ b/src/lib-storage/mail-storage-service.c Tue Mar 09 16:36:32 2010 +0200
@@ -98,6 +98,17 @@
return FALSE;
}
+static bool
+mail_user_set_get_mail_debug(const struct setting_parser_info *user_info,
+ const struct mail_user_settings *user_set)
+{
+ const struct mail_storage_settings *mail_set;
+
+ mail_set = mail_user_set_get_driver_settings(user_info, user_set,
+ MAIL_STORAGE_SET_DRIVER_NAME);
+ return mail_set->mail_debug;
+}
+
static int
user_reply_handle(struct mail_storage_service_user *user,
const struct auth_user_reply *reply,
@@ -106,8 +117,11 @@
struct setting_parser_context *set_parser = user->set_parser;
const char *const *str, *p, *line, *key;
unsigned int i, count;
+ bool mail_debug;
int ret = 0;
+ mail_debug = mail_user_set_get_mail_debug(user->user_info,
+ user->user_set);
if (reply->uid != (uid_t)-1) {
if (reply->uid == 0) {
*error_r = "userdb returned 0 as uid";
@@ -160,6 +174,11 @@
}
ret = settings_parse_line(set_parser, line);
+ if (mail_debug && ret >= 0) {
+ i_debug(ret == 0 ?
+ "Unknown userdb setting: %s" :
+ "Added userdb setting: %s", line);
+ }
} T_END;
}
@@ -672,15 +691,11 @@
const struct setting_parser_info *user_info,
const struct mail_user_settings *user_set)
{
- const struct mail_storage_settings *mail_set;
enum auth_master_flags flags = 0;
i_assert(ctx->conn == NULL);
- mail_set = mail_user_set_get_driver_settings(user_info, user_set,
- MAIL_STORAGE_SET_DRIVER_NAME);
- ctx->debug = mail_set->mail_debug;
-
+ ctx->debug = mail_user_set_get_mail_debug(user_info, user_set);
if (ctx->debug)
flags |= AUTH_MASTER_FLAG_DEBUG;
if ((ctx->flags & MAIL_STORAGE_SERVICE_FLAG_NO_IDLE_TIMEOUT) != 0)
@@ -696,7 +711,6 @@
const struct setting_parser_info *user_info,
const struct mail_user_settings *user_set)
{
- const struct mail_storage_settings *mail_set;
struct module_dir_load_settings mod_set;
if (*user_set->mail_plugins == '\0')
@@ -704,13 +718,10 @@
if ((ctx->flags & MAIL_STORAGE_SERVICE_FLAG_NO_PLUGINS) != 0)
return;
- mail_set = mail_user_set_get_driver_settings(user_info, user_set,
- MAIL_STORAGE_SET_DRIVER_NAME);
-
memset(&mod_set, 0, sizeof(mod_set));
mod_set.version = master_service_get_version_string(ctx->service);
mod_set.require_init_funcs = TRUE;
- mod_set.debug = mail_set->mail_debug;
+ mod_set.debug = mail_user_set_get_mail_debug(user_info, user_set);
mail_storage_service_modules =
module_dir_load_missing(mail_storage_service_modules,
More information about the dovecot-cvs
mailing list