gboolean cfg_init(GlobalConfig *cfg) { gint regerr; if (cfg->file_template_name && !(cfg->file_template = cfg_tree_lookup_template(&cfg->tree, cfg->file_template_name))) msg_error("Error resolving file template", evt_tag_str("name", cfg->file_template_name), NULL); if (cfg->proto_template_name && !(cfg->proto_template = cfg_tree_lookup_template(&cfg->tree, cfg->proto_template_name))) msg_error("Error resolving protocol template", evt_tag_str("name", cfg->proto_template_name), NULL); if (cfg->bad_hostname_re) { if ((regerr = regcomp(&cfg->bad_hostname, cfg->bad_hostname_re, REG_NOSUB | REG_EXTENDED)) != 0) { gchar buf[256]; regerror(regerr, &cfg->bad_hostname, buf, sizeof(buf)); msg_error("Error compiling bad_hostname regexp", evt_tag_str("error", buf), NULL); } else { cfg->bad_hostname_compiled = TRUE; } } if (!rcptid_init(cfg->state, cfg->use_uniqid)) return FALSE; stats_reinit(&cfg->stats_options); log_tags_reinit_stats(cfg); dns_caching_update_options(&cfg->dns_cache_options); hostname_reinit(cfg->custom_domain); host_resolve_options_init(&cfg->host_resolve_options, cfg); log_template_options_init(&cfg->template_options, cfg); if (!cfg_init_modules(cfg)) return FALSE; return cfg_tree_start(&cfg->tree); }
static void test_rcptid_is_persistent_across_persist_backend_reinits(void) { guint64 rcptid; setup_persist_id_test(); rcptid_set_id(0x0000FFFFFFFFFFFE); rcptid = rcptid_generate_id(); assert_guint64(rcptid, 0x0000FFFFFFFFFFFE, "Rcptid initialization to specific value failed!"); state = restart_persist_state(state); rcptid_deinit(); rcptid_init(state, TRUE); rcptid = rcptid_generate_id(); assert_guint64(rcptid, 0x0000FFFFFFFFFFFF, "Rcptid did not persisted across persist backend reinit!"); teardown_persist_id_test(); }
static void setup_rcptid_test(void) { state = clean_and_create_persist_state_for_test("test_values.persist"); rcptid_init(state, TRUE); }