From 550fe90708c223ba65e7375ab8b822917ca903c3 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sun, 9 May 2010 11:54:22 +0200 Subject: HTTP proxy support control_proxy pipes xmlrpc data through the proxy, this one is for the music too. --- src/settings.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/settings.c') diff --git a/src/settings.c b/src/settings.c index 4ac2fea..1dee0ea 100644 --- a/src/settings.c +++ b/src/settings.c @@ -72,6 +72,7 @@ void BarSettingsInit (BarSettings_t *settings) { */ void BarSettingsDestroy (BarSettings_t *settings) { free (settings->controlProxy); + free (settings->proxy); free (settings->username); free (settings->password); free (settings->autostartStation); @@ -130,6 +131,8 @@ void BarSettingsRead (BarSettings_t *settings) { } if (strcmp ("control_proxy", key) == 0) { settings->controlProxy = strdup (val); + } else if (strcmp ("proxy", key) == 0) { + settings->proxy = strdup (val); } else if (strcmp ("user", key) == 0) { settings->username = strdup (val); } else if (strcmp ("password", key) == 0) { @@ -159,5 +162,13 @@ void BarSettingsRead (BarSettings_t *settings) { } } + /* check environment variable if proxy is not set explicitly */ + if (settings->proxy == NULL) { + char *tmpProxy = getenv ("http_proxy"); + if (tmpProxy != NULL && strlen (tmpProxy) > 0) { + settings->proxy = strdup (tmpProxy); + } + } + fclose (configfd); } -- cgit v1.2.3