From: Timo Sirainen Date: Thu, 12 Jan 2023 13:33:17 +0000 (+0200) Subject: lib-storage: Move mail_storage_settings.mail_debug to mail_user_settings X-Git-Tag: 2.4.0~2308 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2e293221947dc6e6798240afc89a0b3aa50aa1ae;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: Move mail_storage_settings.mail_debug to mail_user_settings --- diff --git a/src/lib-storage/mail-storage-service.c b/src/lib-storage/mail-storage-service.c index 5f339946a0..1d3a2e9c96 100644 --- a/src/lib-storage/mail-storage-service.c +++ b/src/lib-storage/mail-storage-service.c @@ -100,16 +100,6 @@ mail_storage_service_var_expand(struct mail_storage_service_ctx *ctx, const struct mail_storage_service_privileges *priv, const char **error_r); -static bool -mail_user_set_get_mail_debug(const struct setting_parser_context *set_parser) -{ - const struct mail_storage_settings *mail_set; - - mail_set = settings_parser_get_root_set(set_parser, - &mail_storage_setting_parser_info); - return mail_set->mail_debug; -} - static void set_keyval(struct mail_storage_service_ctx *ctx, struct mail_storage_service_user *user, const char *key, const char *value) @@ -1126,13 +1116,12 @@ void mail_storage_service_set_auth_conn(struct mail_storage_service_ctx *ctx, static void mail_storage_service_first_init(struct mail_storage_service_ctx *ctx, - const struct setting_parser_context *set_parser, const struct mail_user_settings *user_set, enum mail_storage_service_flags service_flags) { enum auth_master_flags flags = 0; - ctx->debug = mail_user_set_get_mail_debug(set_parser) || + ctx->debug = user_set->mail_debug || (service_flags & MAIL_STORAGE_SERVICE_FLAG_DEBUG) != 0; if (ctx->debug) flags |= AUTH_MASTER_FLAG_DEBUG; @@ -1144,7 +1133,6 @@ mail_storage_service_first_init(struct mail_storage_service_ctx *ctx, static int mail_storage_service_load_modules(struct mail_storage_service_ctx *ctx, - const struct setting_parser_context *set_parser, const struct mail_user_settings *user_set, const char **error_r) { @@ -1160,7 +1148,7 @@ mail_storage_service_load_modules(struct mail_storage_service_ctx *ctx, mod_set.binary_name = master_service_get_name(ctx->service); mod_set.setting_name = "mail_plugins"; mod_set.require_init_funcs = TRUE; - mod_set.debug = mail_user_set_get_mail_debug(set_parser); + mod_set.debug = user_set->mail_debug; return module_dir_try_load_missing(&mail_storage_service_modules, user_set->mail_plugin_dir, @@ -1275,9 +1263,9 @@ mail_storage_service_lookup_real(struct mail_storage_service_ctx *ctx, mail_storage_service_set_log_prefix(ctx, user_set, NULL, input, NULL); if (ctx->conn == NULL) - mail_storage_service_first_init(ctx, set_parser, user_set, flags); + mail_storage_service_first_init(ctx, user_set, flags); /* load global plugins */ - if (mail_storage_service_load_modules(ctx, set_parser, user_set, error_r) < 0) { + if (mail_storage_service_load_modules(ctx, user_set, error_r) < 0) { pool_unref(&user_pool); return -1; } @@ -1371,8 +1359,7 @@ mail_storage_service_lookup_real(struct mail_storage_service_ctx *ctx, /* load per-user plugins */ if (ret > 0) { - if (mail_storage_service_load_modules(ctx, user->set_parser, - user->user_set, + if (mail_storage_service_load_modules(ctx, user->user_set, error_r) < 0) { ret = -2; } @@ -1666,7 +1653,7 @@ void mail_storage_service_init_settings(struct mail_storage_service_ctx *ctx, user_set = settings_parser_get_root_set(set_parser, &mail_user_setting_parser_info); - mail_storage_service_first_init(ctx, set_parser, user_set, ctx->flags); + mail_storage_service_first_init(ctx, user_set, ctx->flags); } static int diff --git a/src/lib-storage/mail-storage-settings.c b/src/lib-storage/mail-storage-settings.c index 93da75caa2..65dbd248ab 100644 --- a/src/lib-storage/mail-storage-settings.c +++ b/src/lib-storage/mail-storage-settings.c @@ -75,7 +75,6 @@ static const struct setting_define mail_storage_setting_defines[] = { DEF(BOOL, mailbox_list_index), DEF(BOOL, mailbox_list_index_very_dirty_syncs), DEF(BOOL, mailbox_list_index_include_inbox), - DEF(BOOL, mail_debug), DEF(BOOL, mail_full_filesystem_access), DEF(BOOL, maildir_stat_dirs), DEF(BOOL, mail_shared_explicit_inbox), @@ -133,7 +132,6 @@ const struct mail_storage_settings mail_storage_default_settings = { .mailbox_list_index = TRUE, .mailbox_list_index_very_dirty_syncs = FALSE, .mailbox_list_index_include_inbox = FALSE, - .mail_debug = FALSE, .mail_full_filesystem_access = FALSE, .maildir_stat_dirs = FALSE, .mail_shared_explicit_inbox = FALSE, @@ -272,6 +270,7 @@ static const struct setting_define mail_user_setting_defines[] = { DEF(STR, base_dir), DEF(STR, auth_socket_path), DEF(STR_VARS, mail_temp_dir), + DEF(BOOL, mail_debug), DEF(STR, mail_uid), DEF(STR, mail_gid), @@ -305,6 +304,7 @@ static const struct mail_user_settings mail_user_default_settings = { .base_dir = PKG_RUNDIR, .auth_socket_path = "auth-userdb", .mail_temp_dir = "/tmp", + .mail_debug = FALSE, .mail_uid = "", .mail_gid = "", diff --git a/src/lib-storage/mail-storage-settings.h b/src/lib-storage/mail-storage-settings.h index acc20a9b80..131ab13235 100644 --- a/src/lib-storage/mail-storage-settings.h +++ b/src/lib-storage/mail-storage-settings.h @@ -56,7 +56,6 @@ struct mail_storage_settings { bool mailbox_list_index; bool mailbox_list_index_very_dirty_syncs; bool mailbox_list_index_include_inbox; - bool mail_debug; bool mail_full_filesystem_access; bool maildir_stat_dirs; bool mail_shared_explicit_inbox; @@ -119,6 +118,7 @@ struct mail_user_settings { const char *base_dir; const char *auth_socket_path; const char *mail_temp_dir; + bool mail_debug; const char *mail_uid; const char *mail_gid; diff --git a/src/lib-storage/mail-user.c b/src/lib-storage/mail-user.c index 426861245e..19e475c0b7 100644 --- a/src/lib-storage/mail-user.c +++ b/src/lib-storage/mail-user.c @@ -172,7 +172,6 @@ int mail_user_var_expand(struct mail_user *user, int mail_user_init(struct mail_user *user, const char **error_r) { - const struct mail_storage_settings *mail_set; const char *error; i_assert(!user->initialized); @@ -206,8 +205,7 @@ int mail_user_init(struct mail_user *user, const char **error_r) /* autocreated users for shared mailboxes need to be fully initialized if they don't exist, since they're going to be used anyway */ if (user->error == NULL || user->nonexistent) { - mail_set = mail_user_set_get_storage_set(user); - user->mail_debug = mail_set->mail_debug; + user->mail_debug = user->set->mail_debug; user->initialized = TRUE; hook_mail_user_created(user);