From 8f5b34c22e4c3bfb35ca13c4744867eb5ddbd3d6 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Thu, 5 Nov 2009 20:15:40 -0500 Subject: [PATCH] mail storage service: Added MAIL_STORAGE_SERVICE_NO_LOG_INIT flag. --HG-- branch : HEAD --- src/lib-storage/mail-storage-service.c | 9 ++++++--- src/lib-storage/mail-storage-service.h | 4 +++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/lib-storage/mail-storage-service.c b/src/lib-storage/mail-storage-service.c index dfe489c7ba..40d25be6f3 100644 --- a/src/lib-storage/mail-storage-service.c +++ b/src/lib-storage/mail-storage-service.c @@ -490,8 +490,10 @@ mail_storage_service_init(struct master_service *service, /* do all the global initialization. delay initializing plugins until we drop privileges the first time. */ - master_service_init_log(service, t_strconcat(service->name, ": ", NULL)); - + if ((flags & MAIL_STORAGE_SERVICE_NO_LOG_INIT) == 0) { + master_service_init_log(service, + t_strconcat(service->name, ": ", NULL)); + } dict_drivers_register_builtin(); return ctx; } @@ -736,7 +738,8 @@ int mail_storage_service_next(struct mail_storage_service_ctx *ctx, return -1; } - mail_storage_service_init_log(ctx->service, user); + if ((ctx->flags & MAIL_STORAGE_SERVICE_NO_LOG_INIT) == 0) + mail_storage_service_init_log(ctx->service, user); if ((ctx->flags & MAIL_STORAGE_SERVICE_FLAG_NO_RESTRICT_ACCESS) == 0) { service_drop_privileges(user_set, user->system_groups_user, diff --git a/src/lib-storage/mail-storage-service.h b/src/lib-storage/mail-storage-service.h index dbe5da0080..de12b8fde1 100644 --- a/src/lib-storage/mail-storage-service.h +++ b/src/lib-storage/mail-storage-service.h @@ -18,7 +18,9 @@ enum mail_storage_service_flags { /* Don't chdir() to user's home */ MAIL_STORAGE_SERVICE_FLAG_NO_CHDIR = 0x10, /* Drop privileges only temporarily (keep running as setuid-root) */ - MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP = 0x20 + MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP = 0x20, + /* Don't initialize logging or change log prefixes */ + MAIL_STORAGE_SERVICE_NO_LOG_INIT = 0x40 }; struct mail_storage_service_input { -- 2.47.3