DEF(SET_ENUM, ssl),
DEF(SET_STR, default_internal_user),
DEF(SET_STR, default_login_user),
+ DEF(SET_STR, default_mail_extra_groups),
DEF(SET_UINT, default_process_limit),
DEF(SET_UINT, default_client_limit),
DEF(SET_UINT, default_idle_kill),
.ssl = "yes:no:required",
.default_internal_user = "dovecot",
.default_login_user = "dovenull",
+ .default_mail_extra_groups = "",
.default_process_limit = 100,
.default_client_limit = 1000,
.default_idle_kill = 60,
}
}
+static void
+expand_group(const char **group, const struct master_settings *set)
+{
+ /* same reason as expand_user() */
+ if (strcmp(*group, "$default_mail_extra_groups") == 0)
+ *group = set->default_mail_extra_groups;
+}
+
static void
fix_file_listener_paths(ARRAY_TYPE(file_listener_settings) *l,
pool_t pool, const struct master_settings *master_set,
}
}
expand_user(&service->user, &service->user_default, set);
+ expand_group(&service->extra_groups, set);
service_set_login_dump_core(service);
}
set->protocols_split = p_strsplit_spaces(pool, set->protocols, " ");