summaryrefslogtreecommitdiff
path: root/bitbake/lib/bb/fetch
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2008-11-04 19:13:03 +0000
committerRichard Purdie <rpurdie@linux.intel.com>2008-11-04 19:13:03 +0000
commitc2ef2d4f5aedbf1d188e082d32c6e1e5f62891d9 (patch)
treec6e571997a723ca5fa7302eac19600ee986b212b /bitbake/lib/bb/fetch
parent2bd4344e9aa3a72de10ed399449f558752bc7949 (diff)
downloadopenembedded-core-c2ef2d4f5aedbf1d188e082d32c6e1e5f62891d9.tar.gz
openembedded-core-c2ef2d4f5aedbf1d188e082d32c6e1e5f62891d9.tar.bz2
openembedded-core-c2ef2d4f5aedbf1d188e082d32c6e1e5f62891d9.zip
bitbake: Improve proxy handling got wget so urls can be excluded from the proxy
Diffstat (limited to 'bitbake/lib/bb/fetch')
-rw-r--r--bitbake/lib/bb/fetch/wget.py25
1 files changed, 22 insertions, 3 deletions
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: