doveadm-settings.c revision 0ed18ece24069cc58be20f5f1cd5980f1ed37f2a
5f5870385cff47efd2f58e7892f251cf13761528Timo Sirainen/* Copyright (c) 2010-2012 Dovecot authors, see the included COPYING file */
643a81fff9003cba13deb49a565a3c8171da524dTimo Sirainenstatic bool doveadm_settings_check(void *_set, pool_t pool, const char **error_r);
6c00502d4ece417ead501db8f0ee3e8287ba4459Timo Sirainen/* <settings checks> */
643a81fff9003cba13deb49a565a3c8171da524dTimo Sirainenstatic struct file_listener_settings doveadm_unix_listeners_array[] = {
421d30619384e72a27e2a5d13ff6525aff4d17feTimo Sirainenstatic struct file_listener_settings *doveadm_unix_listeners[] = {
6c00502d4ece417ead501db8f0ee3e8287ba4459Timo Sirainen doveadm_unix_listeners, sizeof(doveadm_unix_listeners), { 0, }
6c00502d4ece417ead501db8f0ee3e8287ba4459Timo Sirainen/* </settings checks> */
fcaf124d4a727424a338cccfd4274c2393818cd3Timo Sirainenstruct service_settings doveadm_service_settings = {
421d30619384e72a27e2a5d13ff6525aff4d17feTimo Sirainen .unix_listeners = { { &doveadm_unix_listeners_buf,
421d30619384e72a27e2a5d13ff6525aff4d17feTimo Sirainen { type, #name, offsetof(struct doveadm_settings, name), NULL }
421d30619384e72a27e2a5d13ff6525aff4d17feTimo Sirainenstatic const struct setting_define doveadm_setting_defines[] = {
421d30619384e72a27e2a5d13ff6525aff4d17feTimo Sirainen { SET_STRLIST, "plugin", offsetof(struct doveadm_settings, plugin_envs), NULL },
421d30619384e72a27e2a5d13ff6525aff4d17feTimo Sirainenconst struct doveadm_settings doveadm_default_settings = {
421d30619384e72a27e2a5d13ff6525aff4d17feTimo Sirainen .dsync_remote_cmd = "ssh -l%{login} %{host} doveadm dsync-server -u%u -l%{lock_timeout}",
643a81fff9003cba13deb49a565a3c8171da524dTimo Sirainenstatic const struct setting_parser_info *doveadm_setting_dependencies[] = {
402e999a878e0cc41a0afb830fea0a93afc75f0dTimo Sirainenconst struct setting_parser_info doveadm_setting_parser_info = {
ecf44c74416ffa4e7c331e49a1e283be6b1aa668Timo Sirainen .struct_size = sizeof(struct doveadm_settings),
fcaf124d4a727424a338cccfd4274c2393818cd3Timo Sirainenfix_base_path(struct doveadm_settings *set, pool_t pool, const char **str)
fcaf124d4a727424a338cccfd4274c2393818cd3Timo Sirainen if (*str != NULL && **str != '\0' && **str != '/')
fcaf124d4a727424a338cccfd4274c2393818cd3Timo Sirainen *str = p_strconcat(pool, set->base_dir, "/", *str, NULL);
402e999a878e0cc41a0afb830fea0a93afc75f0dTimo Sirainen/* <settings checks> */
643a81fff9003cba13deb49a565a3c8171da524dTimo Sirainenstatic bool doveadm_settings_check(void *_set ATTR_UNUSED,
5fbccc935e3f7b916aa7c6e302a212821072e83aTimo Sirainen fix_base_path(set, pool, &set->doveadm_socket_path);
643a81fff9003cba13deb49a565a3c8171da524dTimo Sirainen/* </settings checks> */