login-settings.c revision 5733207dc3ec10e6e5a6e0a8b30fbd1b061062b9
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainen/* Copyright (c) 2005-2012 Dovecot authors, see the included COPYING file */
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainenstatic bool login_settings_check(void *_set, pool_t pool, const char **error_r);
01cbf4ac5d44137ab434791be7f838d98d0fcf3bTimo Sirainen { type, #name, offsetof(struct login_settings, name), NULL }
01cbf4ac5d44137ab434791be7f838d98d0fcf3bTimo Sirainenstatic const struct setting_define login_setting_defines[] = {
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainenstatic const struct login_settings login_default_settings = {
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainen .login_log_format_elements = "user=<%u> method=%m rip=%r lip=%l mpid=%e %c",
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainen .ssl_cipher_list = "ALL:!LOW:!SSLv2:!EXP:!aNULL",
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainenconst struct setting_parser_info login_setting_parser_info = {
b2ecd50bb98c44816cb07c17aa17fae2b425f941Timo Sirainenstatic const struct setting_parser_info *default_login_set_roots[] = {
b2ecd50bb98c44816cb07c17aa17fae2b425f941Timo Sirainenconst struct setting_parser_info **login_set_roots = default_login_set_roots;
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainenstatic struct master_service_settings_cache *set_cache;
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainen/* <settings checks> */
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainenstatic int ssl_settings_check(void *_set ATTR_UNUSED, const char **error_r)
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainen *error_r = t_strdup_printf("SSL support not compiled in but ssl=%s",
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainen *error_r = "ssl enabled, but ssl_cert not set";
8fcff4c5b52f24d9c681805fdf06b486f1d0fcbeTimo Sirainen *error_r = "ssl enabled, but ssl_key not set";
return FALSE;
return TRUE;
return FALSE;
return FALSE;
return FALSE;
return TRUE;
static const struct var_expand_table *
return tab;
struct login_settings *
const char *local_name,
void ***other_settings_r)
const char *error;
void *const *cache_sets;
void **sets;
unsigned int i, count;
for (i = 0; i < count; i++) {
return sets[0];
void login_settings_deinit(void)