From 49d4f24f8d031a9301676196bd6a17ea3e54cb62 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Wed, 28 Jan 2015 14:55:25 +0100 Subject: misc cleanup, moving TALER_MINT_config_load to libtalerutil --- src/util/util.c | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'src/util/util.c') diff --git a/src/util/util.c b/src/util/util.c index 440b49fab..de085d088 100644 --- a/src/util/util.c +++ b/src/util/util.c @@ -16,7 +16,7 @@ /** * @file util.c - * @brief Common utility functions + * @brief Common utility functions; we might choose to move those to GNUnet at some point * @author Sree Harsha Totakura * @author Florian Dold * @author Benedikt Mueller @@ -60,4 +60,33 @@ TALER_data_to_string_alloc (const void *buf, size_t size) } +/** + * Load configuration by parsing all configuration + * files in the given directory. + * + * @param base_dir directory with the configuration files + * @return NULL on error, otherwise configuration + */ +struct GNUNET_CONFIGURATION_Handle * +TALER_config_load (const char *base_dir) +{ + struct GNUNET_CONFIGURATION_Handle *cfg; + char *cfg_dir; + int res; + + res = GNUNET_asprintf (&cfg_dir, + "%s" DIR_SEPARATOR_STR "config", + base_dir); + GNUNET_assert (res > 0); + cfg = GNUNET_CONFIGURATION_create (); + res = GNUNET_CONFIGURATION_load_from (cfg, cfg_dir); + GNUNET_free (cfg_dir); + if (GNUNET_OK != res) + return NULL; + return cfg; +} + + + + /* end of util.c */ -- cgit v1.2.3