diff options
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/fetch2/wget.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/bitbake/lib/bb/fetch2/wget.py b/bitbake/lib/bb/fetch2/wget.py index 6b60d9b16b..ecb946aa81 100644 --- a/bitbake/lib/bb/fetch2/wget.py +++ b/bitbake/lib/bb/fetch2/wget.py | |||
@@ -108,6 +108,10 @@ class Wget(FetchMethod): | |||
108 | bb.utils.mkdirhier(os.path.dirname(dldir + os.sep + ud.localfile)) | 108 | bb.utils.mkdirhier(os.path.dirname(dldir + os.sep + ud.localfile)) |
109 | fetchcmd += " -O " + dldir + os.sep + ud.localfile | 109 | fetchcmd += " -O " + dldir + os.sep + ud.localfile |
110 | 110 | ||
111 | if ud.user: | ||
112 | up = ud.user.split(":") | ||
113 | fetchcmd += " --user=%s --password=%s --auth-no-challenge" % (up[0],up[1]) | ||
114 | |||
111 | uri = ud.url.split(";")[0] | 115 | uri = ud.url.split(";")[0] |
112 | if os.path.exists(ud.localpath): | 116 | if os.path.exists(ud.localpath): |
113 | # file exists, but we didnt complete it.. trying again.. | 117 | # file exists, but we didnt complete it.. trying again.. |
@@ -300,6 +304,13 @@ class Wget(FetchMethod): | |||
300 | uri = ud.url.split(";")[0] | 304 | uri = ud.url.split(";")[0] |
301 | r = urllib.request.Request(uri) | 305 | r = urllib.request.Request(uri) |
302 | r.get_method = lambda: "HEAD" | 306 | r.get_method = lambda: "HEAD" |
307 | |||
308 | if ud.user: | ||
309 | import base64 | ||
310 | encodeuser = base64.b64encode(ud.user.encode('utf-8')).decode("utf-8") | ||
311 | authheader = "Basic %s" % encodeuser | ||
312 | r.add_header("Authorization", authheader) | ||
313 | |||
303 | opener.open(r) | 314 | opener.open(r) |
304 | except urllib.error.URLError as e: | 315 | except urllib.error.URLError as e: |
305 | if try_again: | 316 | if try_again: |