static void load_gpg_keys(void) { map_string_t *settings = new_map_string(); if (!load_abrt_conf_file(GPG_CONF, settings)) { error_msg("Can't load '%s'", GPG_CONF); return; } const char *gpg_keys_dir = get_map_string_item_or_NULL(settings, "GPGKeysDir"); if (strcmp(gpg_keys_dir, "") != 0) { log_debug("Reading gpg keys from '%s'", gpg_keys_dir); GHashTable *done_set = g_hash_table_new(g_str_hash, g_str_equal); GList *gpg_files = get_file_list(gpg_keys_dir, NULL /* we don't care about the file ext */); for (GList *iter = gpg_files; iter; iter = g_list_next(iter)) { const char *key_path = fo_get_fullpath((file_obj_t *)iter->data); if (g_hash_table_contains(done_set, key_path)) continue; g_hash_table_insert(done_set, (gpointer)key_path, NULL); log_debug("Loading gpg key '%s'", key_path); settings_setOpenGPGPublicKeys = g_list_append(settings_setOpenGPGPublicKeys, xstrdup(key_path)); } g_list_free_full(gpg_files, (GDestroyNotify)free_file_obj); g_hash_table_destroy(done_set); } }
int load_abrt_conf() { free_abrt_conf_data(); map_string_t *settings = new_map_string(); if (!load_abrt_conf_file(ABRT_CONF, settings)) perror_msg("Can't load '%s'", ABRT_CONF); ParseCommon(settings, ABRT_CONF); free_map_string(settings); return 0; }
static int load_conf(const char *conf_filename) { map_string_t *settings = new_map_string(); if (conf_filename != NULL) { if (!load_conf_file(conf_filename, settings, false)) error_msg("Can't open '%s'", conf_filename); } else { conf_filename = "abrt-action-save-package-data.conf"; if (!load_abrt_conf_file(conf_filename, settings)) error_msg("Can't load '%s'", conf_filename); } ParseCommon(settings, conf_filename); free_map_string(settings); load_gpg_keys(); return 0; }