dovecot-2.0: Moved dbox_attachment_* settings to generic mail_at...

dovecot at dovecot.org dovecot at dovecot.org
Sat Oct 2 14:33:55 EEST 2010


details:   http://hg.dovecot.org/dovecot-2.0/rev/4bcda3368b74
changeset: 12239:4bcda3368b74
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Aug 05 19:24:34 2010 +0100
description:
Moved dbox_attachment_* settings to generic mail_attachment_* settings.
This also fixes mdbox crash at startup.

diffstat:

 src/lib-storage/index/dbox-common/Makefile.am     |   2 -
 src/lib-storage/index/dbox-common/dbox-settings.c |  41 --------------------
 src/lib-storage/index/dbox-common/dbox-settings.h |  11 -----
 src/lib-storage/index/dbox-common/dbox-storage.c  |  13 ++----
 src/lib-storage/index/dbox-single/sdbox-storage.c |   3 +-
 src/lib-storage/mail-storage-settings.c           |   4 ++
 src/lib-storage/mail-storage-settings.h           |   2 +
 7 files changed, 12 insertions(+), 64 deletions(-)

diffs (175 lines):

diff -r 21be5322214d -r 4bcda3368b74 src/lib-storage/index/dbox-common/Makefile.am
--- a/src/lib-storage/index/dbox-common/Makefile.am	Fri Jul 30 16:03:50 2010 +0100
+++ b/src/lib-storage/index/dbox-common/Makefile.am	Thu Aug 05 19:24:34 2010 +0100
@@ -16,7 +16,6 @@
 	dbox-file-fix.c \
 	dbox-mail.c \
 	dbox-save.c \
-	dbox-settings.c \
 	dbox-storage.c \
 	dbox-sync-rebuild.c
 
@@ -25,7 +24,6 @@
 	dbox-file.h \
 	dbox-mail.h \
 	dbox-save.h \
-	dbox-settings.h \
 	dbox-storage.h \
 	dbox-sync-rebuild.h
 
diff -r 21be5322214d -r 4bcda3368b74 src/lib-storage/index/dbox-common/dbox-settings.c
--- a/src/lib-storage/index/dbox-common/dbox-settings.c	Fri Jul 30 16:03:50 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-/* Copyright (c) 2006-2010 Dovecot authors, see the included COPYING file */
-
-#include "lib.h"
-#include "settings-parser.h"
-#include "mail-storage-settings.h"
-#include "dbox-settings.h"
-
-#include <stddef.h>
-
-#undef DEF
-#define DEF(type, name) \
-	{ type, #name, offsetof(struct dbox_settings, name), NULL }
-
-static const struct setting_define dbox_setting_defines[] = {
-	DEF(SET_STR_VARS, dbox_attachment_fs),
-	DEF(SET_STR_VARS, dbox_attachment_dir),
-
-	SETTING_DEFINE_LIST_END
-};
-
-static const struct dbox_settings dbox_default_settings = {
-	.dbox_attachment_fs = "sis posix",
-	.dbox_attachment_dir = ""
-};
-
-static const struct setting_parser_info dbox_setting_parser_info = {
-	.module_name = "dbox",
-	.defines = dbox_setting_defines,
-	.defaults = &dbox_default_settings,
-
-	.type_offset = (size_t)-1,
-	.struct_size = sizeof(struct dbox_settings),
-
-	.parent_offset = (size_t)-1,
-	.parent = &mail_user_setting_parser_info
-};
-
-const struct setting_parser_info *dbox_get_setting_parser_info(void)
-{
-	return &dbox_setting_parser_info;
-}
diff -r 21be5322214d -r 4bcda3368b74 src/lib-storage/index/dbox-common/dbox-settings.h
--- a/src/lib-storage/index/dbox-common/dbox-settings.h	Fri Jul 30 16:03:50 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-#ifndef DBOX_SETTINGS_H
-#define DBOX_SETTINGS_H
-
-struct dbox_settings {
-	const char *dbox_attachment_fs;
-	const char *dbox_attachment_dir;
-};
-
-const struct setting_parser_info *dbox_get_setting_parser_info(void);
-
-#endif
diff -r 21be5322214d -r 4bcda3368b74 src/lib-storage/index/dbox-common/dbox-storage.c
--- a/src/lib-storage/index/dbox-common/dbox-storage.c	Fri Jul 30 16:03:50 2010 +0100
+++ b/src/lib-storage/index/dbox-common/dbox-storage.c	Thu Aug 05 19:24:34 2010 +0100
@@ -8,7 +8,6 @@
 #include "mailbox-uidvalidity.h"
 #include "mailbox-list-private.h"
 #include "index-storage.h"
-#include "dbox-settings.h"
 #include "dbox-storage.h"
 
 #include <stdio.h>
@@ -33,26 +32,24 @@
 			const char **error_r ATTR_UNUSED)
 {
 	struct dbox_storage *storage = (struct dbox_storage *)_storage;
-	const struct dbox_settings *set;
+	const struct mail_storage_settings *set = _storage->set;
 	struct fs_settings fs_set;
 
-	set = mail_storage_get_driver_settings(_storage);
-
 	memset(&fs_set, 0, sizeof(fs_set));
 	fs_set.temp_file_prefix = mailbox_list_get_global_temp_prefix(ns->list);
 
 	T_BEGIN {
 		const char *name, *args, *dir;
 
-		args = strchr(set->dbox_attachment_fs, ' ');
+		args = strchr(set->mail_attachment_fs, ' ');
 		if (args == NULL) {
-			name = set->dbox_attachment_fs;
+			name = set->mail_attachment_fs;
 			args = "";
 		} else {
-			name = t_strdup_until(set->dbox_attachment_fs, args++);
+			name = t_strdup_until(set->mail_attachment_fs, args++);
 		}
 		dir = mail_user_home_expand(_storage->user,
-					    set->dbox_attachment_dir);
+					    set->mail_attachment_dir);
 		storage->attachment_dir = p_strdup(_storage->pool, dir);
 		storage->attachment_fs = fs_init(name, args, &fs_set);
 	} T_END;
diff -r 21be5322214d -r 4bcda3368b74 src/lib-storage/index/dbox-single/sdbox-storage.c
--- a/src/lib-storage/index/dbox-single/sdbox-storage.c	Fri Jul 30 16:03:50 2010 +0100
+++ b/src/lib-storage/index/dbox-single/sdbox-storage.c	Thu Aug 05 19:24:34 2010 +0100
@@ -6,7 +6,6 @@
 #include "mailbox-list-private.h"
 #include "dbox-mail.h"
 #include "dbox-save.h"
-#include "dbox-settings.h"
 #include "sdbox-file.h"
 #include "sdbox-sync.h"
 #include "sdbox-storage.h"
@@ -271,7 +270,7 @@
 	.class_flags = 0,
 
 	.v = {
-                dbox_get_setting_parser_info,
+                NULL,
 		sdbox_storage_alloc,
 		dbox_storage_create,
 		dbox_storage_destroy,
diff -r 21be5322214d -r 4bcda3368b74 src/lib-storage/mail-storage-settings.c
--- a/src/lib-storage/mail-storage-settings.c	Fri Jul 30 16:03:50 2010 +0100
+++ b/src/lib-storage/mail-storage-settings.c	Thu Aug 05 19:24:34 2010 +0100
@@ -23,6 +23,8 @@
 static const struct setting_define mail_storage_setting_defines[] = {
 	DEF(SET_STR_VARS, mail_location),
 	{ SET_ALIAS, "mail", 0, NULL },
+	DEF(SET_STR_VARS, mail_attachment_fs),
+	DEF(SET_STR_VARS, mail_attachment_dir),
 	DEF(SET_STR, mail_cache_fields),
 	DEF(SET_STR, mail_never_cache_fields),
 	DEF(SET_UINT, mail_cache_min_mail_count),
@@ -47,6 +49,8 @@
 
 const struct mail_storage_settings mail_storage_default_settings = {
 	.mail_location = "",
+	.mail_attachment_fs = "sis posix",
+	.mail_attachment_dir = "",
 	.mail_cache_fields = "flags",
 	.mail_never_cache_fields = "imap.envelope",
 	.mail_cache_min_mail_count = 0,
diff -r 21be5322214d -r 4bcda3368b74 src/lib-storage/mail-storage-settings.h
--- a/src/lib-storage/mail-storage-settings.h	Fri Jul 30 16:03:50 2010 +0100
+++ b/src/lib-storage/mail-storage-settings.h	Thu Aug 05 19:24:34 2010 +0100
@@ -11,6 +11,8 @@
 
 struct mail_storage_settings {
 	const char *mail_location;
+	const char *mail_attachment_fs;
+	const char *mail_attachment_dir;
 	const char *mail_cache_fields;
 	const char *mail_never_cache_fields;
 	unsigned int mail_cache_min_mail_count;


More information about the dovecot-cvs mailing list