struct ip_addr net_ip;
unsigned int bits;
- if (client->set->login_trusted_networks == NULL)
- return FALSE;
-
- net = t_strsplit_spaces(client->set->login_trusted_networks, ", ");
+ net = settings_boollist_get(&client->set->login_trusted_networks);
for (; *net != NULL; net++) {
if (net_parse_range(*net, &net_ip, &bits) < 0) {
e_error(client->event, "login_trusted_networks: "
SETTING_DEFINE_STRUCT_##type(#name, name, struct login_settings)
static const struct setting_define login_setting_defines[] = {
- DEF(STR, login_trusted_networks),
+ DEF(BOOLLIST, login_trusted_networks),
DEF(STR, login_source_ips),
DEF(STR_HIDDEN, login_greeting),
DEF(STR_NOVARS, login_log_format_elements),
};
static const struct login_settings login_default_settings = {
- .login_trusted_networks = "",
+ .login_trusted_networks = ARRAY_INIT,
.login_source_ips = "",
.login_greeting = PACKAGE_NAME" ready.",
.login_log_format_elements = "user=<%u> method=%m rip=%r lip=%l mpid=%e %c session=<%{session}>",
struct login_settings {
pool_t pool;
- const char *login_trusted_networks;
+ ARRAY_TYPE(const_string) login_trusted_networks;
const char *login_source_ips;
const char *login_greeting;
const char *login_log_format_elements, *login_log_format;