[2/2] fix download routines in Pakfire if behind upstream proxy
Commit Message
Using an array for setting both HTTP and HTTPS proxy settings in
functions.pl does not seem to work, the queries are still transferred
directly.
Setting proxies with two code lines is boilerplate-style, but
works much more robust.
Partially fixes #11900
Signed-off-by: Peter Müller <peter.mueller@link38.eu>
---
src/pakfire/lib/functions.pl | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -157,10 +157,12 @@ sub fetchfile {
if ($proxysettings{'UPSTREAM_PROXY'}) {
logger("DOWNLOAD INFO: Upstream proxy: \"$proxysettings{'UPSTREAM_PROXY'}\"");
if ($proxysettings{'UPSTREAM_USER'}) {
- $ua->proxy([["http", "https"] => "http://$proxysettings{'UPSTREAM_USER'}:$proxysettings{'UPSTREAM_PASSWORD'}@"."$proxysettings{'UPSTREAM_PROXY'}/"]);
+ $ua->proxy("http" => "http://$proxysettings{'UPSTREAM_USER'}:$proxysettings{'UPSTREAM_PASSWORD'}\@$proxysettings{'UPSTREAM_PROXY'}/");
+ $ua->proxy("https" => "http://$proxysettings{'UPSTREAM_USER'}:$proxysettings{'UPSTREAM_PASSWORD'}\@$proxysettings{'UPSTREAM_PROXY'}/");
logger("DOWNLOAD INFO: Logging in with: \"$proxysettings{'UPSTREAM_USER'}\" - \"$proxysettings{'UPSTREAM_PASSWORD'}\"");
} else {
- $ua->proxy([["http", "https"] => "http://$proxysettings{'UPSTREAM_PROXY'}/"]);
+ $ua->proxy("http" => "http://$proxysettings{'UPSTREAM_PROXY'}/");
+ $ua->proxy("https" => "http://$proxysettings{'UPSTREAM_PROXY'}/");
}
}