config_parser_add_filter_array(struct config_parser_context *ctx,
const char *filter_key, const char *name)
{
- config_parser_set_change_counter(ctx, CONFIG_PARSER_CHANGE_SERVICE_DEFAULTS);
+ config_parser_set_change_counter(ctx, CONFIG_PARSER_CHANGE_DEFAULTS);
if (config_apply_exact_line(ctx, NULL, filter_key, name) < 0) {
i_panic("Failed to add %s %s: %s", filter_key, name,
ctx->error);
.filter_name = p_strdup_printf(ctx->pool, "%s/%s",
filter_key, name),
.filter_name_array = TRUE,
+ .default_settings = TRUE,
};
section->is_filter = TRUE;
section->filter_parser =
const struct setting_parser_info *info = all_infos[service_info_idx];
string_t *value_str = t_str_new(64);
- config_parser_set_change_counter(ctx, CONFIG_PARSER_CHANGE_SERVICE_DEFAULTS);
+ config_parser_set_change_counter(ctx, CONFIG_PARSER_CHANGE_DEFAULTS);
for (unsigned int i = 0; info->defines[i].key != NULL; i++) {
const void *value = CONST_PTR_OFFSET(default_set,
info->defines[i].offset);
struct config_filter filter = {
.filter_name = settings_section_unescape(escaped_key),
.filter_name_array = TRUE,
+ .default_settings = TRUE,
.parent = &orig_filter_parser->filter,
};
struct config_filter_parser *filter_parser =
key = p + 1;
}
- config_parser_set_change_counter(ctx, CONFIG_PARSER_CHANGE_SERVICE_DEFAULTS);
+ config_parser_set_change_counter(ctx, CONFIG_PARSER_CHANGE_DEFAULTS);
if (config_apply_line(ctx, key, defaults[i].value, NULL) < 0) {
i_panic("Failed to add default setting %s=%s for service %s: %s",
defaults[i].key, defaults[i].value,
/* change_counter used for default settings created internally */
#define CONFIG_PARSER_CHANGE_DEFAULTS 1
-/* change_counter used for default service settings created internally */
-#define CONFIG_PARSER_CHANGE_SERVICE_DEFAULTS 2
/* change_counter used for settings changed by configuration file */
-#define CONFIG_PARSER_CHANGE_EXPLICIT 3
+#define CONFIG_PARSER_CHANGE_EXPLICIT 2
struct config_parsed;
struct setting_parser_context;