From: kremlin- Date: Fri, 20 Jun 2014 02:59:38 +0000 (-0500) Subject: exit func for config, close()s and free()s X-Git-Tag: hostnamed-copyable~19 X-Git-Url: https://uglyman.kremlin.cc/gitweb/gitweb.cgi?a=commitdiff_plain;h=7d10ea85785427000ec73b2706260b3a40e20127;p=systembsd.git exit func for config, close()s and free()s --- diff --git a/src/config.c b/src/config.c index 5d85346..2b5ec06 100644 --- a/src/config.c +++ b/src/config.c @@ -3,6 +3,7 @@ #include static GKeyFile *config; +static int config_descr; static const gchar *CONFIG_KEYS[] = { "PrettyHostname", @@ -55,7 +56,6 @@ gboolean config_init() { return FALSE; } - int config_descr; config_descr = g_open(config_path, O_CREAT, 644); gchar *posix_hostname; @@ -86,10 +86,22 @@ gboolean config_init() { if(!g_access(config_path, W_OK)) { g_printf("%s\n", "no write permissions for /etc/! exiting.."); return FALSE; - } else if(g_key_file_load_from_file(config, config_path, G_KEY_FILE_KEEP_COMMENTS, NULL)) + } else if(g_key_file_load_from_file(config, config_path, G_KEY_FILE_KEEP_COMMENTS, NULL)) { + config_descr = g_open(config_path, O_RDWR, 644); return TRUE; + } g_printf("could not read config at %s! exiting..", config_path); return FALSE; } } + +void clean_config() { + + if(config) + g_free(config); + + if(config_descr) + g_close(config_descr, NULL); + +}