DEF(STR_NOVARS, login_log_format),
DEF(STR, login_proxy_notify_path),
DEF(STR, login_plugin_dir),
- DEF(STR, login_plugins),
+ DEF(BOOLLIST, login_plugins),
DEF(TIME_MSECS, login_proxy_timeout),
DEF(UINT, login_proxy_max_reconnects),
DEF(TIME, login_proxy_max_disconnect_delay),
.login_log_format = "%$: %s",
.login_proxy_notify_path = "proxy-notify",
.login_plugin_dir = MODULEDIR"/login",
- .login_plugins = "",
+ .login_plugins = ARRAY_INIT,
.login_proxy_timeout = 30*1000,
.login_proxy_max_reconnects = 3,
.login_proxy_max_disconnect_delay = 0,
const char *login_access_sockets;
const char *login_proxy_notify_path;
const char *login_plugin_dir;
- const char *login_plugins;
+ ARRAY_TYPE(const_string) login_plugins;
unsigned int login_proxy_timeout;
unsigned int login_proxy_max_reconnects;
unsigned int login_proxy_max_disconnect_delay;
#include "dsasl-client.h"
#include "master-service-settings.h"
#include "login-proxy.h"
+#include "settings-parser.h"
#include <unistd.h>
#include <syslog.h>
{
struct module_dir_load_settings mod_set;
- if (global_login_settings->login_plugins[0] == '\0')
+ if (array_is_empty(&global_login_settings->login_plugins))
return;
i_zero(&mod_set);
mod_set.debug = login_debug;
modules = module_dir_load(global_login_settings->login_plugin_dir,
- t_strsplit_spaces(global_login_settings->login_plugins, ", "),
+ settings_boollist_get(&global_login_settings->login_plugins),
&mod_set);
module_dir_init(modules);
}