From c2ef2d4f5aedbf1d188e082d32c6e1e5f62891d9 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 4 Nov 2008 19:13:03 +0000 Subject: bitbake: Improve proxy handling got wget so urls can be excluded from the proxy --- bitbake/lib/bb/fetch/wget.py | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/fetch/wget.py b/bitbake/lib/bb/fetch/wget.py index 88193755d1..75357d539b 100644 --- a/bitbake/lib/bb/fetch/wget.py +++ b/bitbake/lib/bb/fetch/wget.py @@ -60,11 +60,30 @@ class Wget(Fetch): else: fetchcmd = data.getVar("FETCHCOMMAND", d, 1) + uri = uri.split(";")[0] + uri_decoded = list(bb.decodeurl(uri)) + uri_type = uri_decoded[0] + uri_host = uri_decoded[1] + bb.msg.note(1, bb.msg.domain.Fetcher, "fetch " + uri) - fetchcmd = fetchcmd.replace("${URI}", uri.split(";")[0]) + fetchcmd = fetchcmd.replace("${URI}", uri) fetchcmd = fetchcmd.replace("${FILE}", ud.basename) - httpproxy = data.getVar("http_proxy", d, True) - ftpproxy = data.getVar("ftp_proxy", d, True) + httpproxy = None + ftpproxy = None + if uri_type == 'http': + httpproxy = data.getVar("HTTP_PROXY", d, True) + httpproxy_ignore = data.getVar("HTTP_PROXY_IGNORE", d, True).split() + for p in httpproxy_ignore: + if uri_host.endswith(p): + httpproxy = None + break + if uri_type == 'ftp': + ftpproxy = data.getVar("FTP_PROXY", d, True) + ftpproxy_ignore = data.getVar("HTTP_PROXY_IGNORE", d, True).split() + for p in ftpproxy_ignore: + if uri_host.endswith(p): + ftpproxy = None + break if httpproxy: fetchcmd = "http_proxy=" + httpproxy + " " + fetchcmd if ftpproxy: -- cgit v1.2.3-54-g00ecf