diff options
Diffstat (limited to 'servers.c')
-rw-r--r-- | servers.c | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -5,8 +5,8 @@ GSList *servers = NULL; -gboolean server_add(const gchar *host, const guint16 http_port, - const guint16 command_port) { +gboolean server_add(const gchar *name, const gchar *host, + const guint16 http_port, const guint16 command_port) { struct server *server = g_new0(struct server, 1); if(server == NULL) { @@ -14,6 +14,7 @@ gboolean server_add(const gchar *host, const guint16 http_port, return FALSE; } + server->name = g_strdup(name); server->host = g_strdup(host); server->http_port = http_port; server->command_port = command_port; @@ -40,12 +41,17 @@ void servers_init() { gchar **s = conf_get_string_list("audist", "servers", &length); for(int i = 0; i < length; i++) { gchar *section = g_strdup_printf("server/%s", s[i]); + gchar *host = conf_get_string(section, "host"); guint16 http_port = conf_get_int(section, "http_port"); guint16 command_port = conf_get_int(section, "command_port"); g_free(section); - server_add(s[i], http_port, command_port); - g_debug(" server %d: %s (%d, %d)", i, s[i], http_port, command_port); + server_add(s[i], host, http_port, command_port); + g_free(host); + } + + if(s != NULL) { + g_strfreev(s); } } |