SETTING_DEFINE_STRUCT_##type(#name, name, struct mdbox_settings)
static const struct setting_define mdbox_setting_defines[] = {
+ { .type = SET_FILTER_NAME, .key = "mdbox" },
DEF(BOOL, mdbox_preallocate_space),
DEF(SIZE, mdbox_rotate_size),
DEF(TIME, mdbox_rotate_interval),
sdbox-file.c \
sdbox-mail.c \
sdbox-save.c \
+ sdbox-settings.c \
sdbox-sync.c \
sdbox-sync-rebuild.c \
sdbox-storage.c
headers = \
sdbox-file.h \
+ sdbox-settings.h \
sdbox-storage.h \
sdbox-sync.h
--- /dev/null
+/* Copyright (c) 2006-2023 Dovecot authors, see the included COPYING file */
+
+#include "lib.h"
+#include "settings-parser.h"
+#include "mail-storage-settings.h"
+#include "dbox-storage.h"
+#include "sdbox-settings.h"
+
+static const struct setting_define sdbox_setting_defines[] = {
+ { .type = SET_FILTER_NAME, .key = "sdbox" },
+ SETTING_DEFINE_LIST_END
+};
+
+static const struct sdbox_settings sdbox_default_settings = {
+};
+
+const struct setting_parser_info sdbox_setting_parser_info = {
+ .name = "sdbox",
+
+ .defines = sdbox_setting_defines,
+ .defaults = &sdbox_default_settings,
+
+ .struct_size = sizeof(struct sdbox_settings),
+ .pool_offset1 = 1 + offsetof(struct sdbox_settings, pool),
+};
--- /dev/null
+#ifndef SDBOX_SETTINGS_H
+#define SDBOX_SETTINGS_H
+
+struct sdbox_settings {
+ pool_t pool;
+};
+
+extern const struct setting_parser_info sdbox_setting_parser_info;
+
+#endif
static bool imapc_settings_check(void *_set, pool_t pool, const char **error_r);
static const struct setting_define imapc_setting_defines[] = {
+ { .type = SET_FILTER_NAME, .key = "imapc" },
DEF(STR, imapc_host),
DEF(IN_PORT, imapc_port),
SETTING_DEFINE_STRUCT_##type(#name, name, struct maildir_settings)
static const struct setting_define maildir_setting_defines[] = {
+ { .type = SET_FILTER_NAME, .key = "maildir" },
DEF(BOOL, maildir_copy_with_hardlinks),
DEF(BOOL, maildir_very_dirty_syncs),
DEF(BOOL, maildir_broken_filename_sizes),
SETTING_DEFINE_STRUCT_##type(#name, name, struct mbox_settings)
static const struct setting_define mbox_setting_defines[] = {
+ { .type = SET_FILTER_NAME, .key = "mbox" },
DEF(STR, mbox_read_locks),
DEF(STR, mbox_write_locks),
DEF(TIME, mbox_lock_timeout),
SETTING_DEFINE_STRUCT_##type(#name, name, struct pop3c_settings)
static const struct setting_define pop3c_setting_defines[] = {
+ { .type = SET_FILTER_NAME, .key = "pop3c" },
DEF(STR, pop3c_host),
DEF(IN_PORT, pop3c_port),
AM_CPPFLAGS = \
-I$(top_srcdir)/src/lib \
+ -I$(top_srcdir)/src/lib-settings \
-I$(top_srcdir)/src/lib-mail \
-I$(top_srcdir)/src/lib-imap \
-I$(top_srcdir)/src/lib-index \
virtual-search.c \
virtual-storage.c \
virtual-save.c \
+ virtual-settings.c \
virtual-sync.c \
virtual-transaction.c
noinst_HEADERS = \
virtual-plugin.h \
+ virtual-settings.h \
virtual-storage.h \
virtual-transaction.h
--- /dev/null
+/* Copyright (c) 2006-2023 Dovecot authors, see the included COPYING file */
+
+#include "lib.h"
+#include "settings-parser.h"
+#include "mail-storage-settings.h"
+#include "virtual-settings.h"
+
+static const struct setting_define virtual_setting_defines[] = {
+ { .type = SET_FILTER_NAME, .key = "virtual" },
+ SETTING_DEFINE_LIST_END
+};
+
+static const struct virtual_settings virtual_default_settings = {
+};
+
+const struct setting_parser_info virtual_setting_parser_info = {
+ .name = "virtual",
+
+ .defines = virtual_setting_defines,
+ .defaults = &virtual_default_settings,
+
+ .struct_size = sizeof(struct virtual_settings),
+ .pool_offset1 = 1 + offsetof(struct virtual_settings, pool),
+};
--- /dev/null
+#ifndef VIRTUAL_SETTINGS_H
+#define VIRTUAL_SETTINGS_H
+
+struct virtual_settings {
+ pool_t pool;
+};
+
+extern const struct setting_parser_info virtual_setting_parser_info;
+
+#endif