diff options
author | Andrei Antonov <polymorphm@gmail.com> | 2018-08-26 20:37:49 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2018-08-27 00:55:45 +0300 |
commit | 8f7781f1d6bf36c064b39e7d0794c686f1b78665 (patch) | |
tree | 892219ca1dce71083a764ab3a885241b20d3a36e /mesonbuild/wrap/wrap.py | |
parent | f34f0717e00756ea786ac62b3126d3425fcd6649 (diff) | |
download | meson-8f7781f1d6bf36c064b39e7d0794c686f1b78665.zip meson-8f7781f1d6bf36c064b39e7d0794c686f1b78665.tar.gz meson-8f7781f1d6bf36c064b39e7d0794c686f1b78665.tar.bz2 |
using urlopen() with explicit timeout
Diffstat (limited to 'mesonbuild/wrap/wrap.py')
-rw-r--r-- | mesonbuild/wrap/wrap.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/mesonbuild/wrap/wrap.py b/mesonbuild/wrap/wrap.py index a3f8ab1..412097c 100644 --- a/mesonbuild/wrap/wrap.py +++ b/mesonbuild/wrap/wrap.py @@ -29,6 +29,7 @@ except ImportError: has_ssl = False API_ROOT = 'http://wrapdb.mesonbuild.com/v1/' +req_timeout = 600.0 ssl_warning_printed = False def build_ssl_context(): @@ -51,7 +52,7 @@ def open_wrapdburl(urlstring): global ssl_warning_printed if has_ssl: try: - return urllib.request.urlopen(urlstring)# , context=build_ssl_context()) + return urllib.request.urlopen(urlstring, timeout=req_timeout)# , context=build_ssl_context()) except urllib.error.URLError: if not ssl_warning_printed: print('SSL connection failed. Falling back to unencrypted connections.') @@ -64,7 +65,7 @@ def open_wrapdburl(urlstring): # certificate is not known. if urlstring.startswith('https'): urlstring = 'http' + urlstring[5:] - return urllib.request.urlopen(urlstring) + return urllib.request.urlopen(urlstring, timeout=req_timeout) class PackageDefinition: @@ -270,7 +271,7 @@ class Resolver: if url.startswith('https://wrapdb.mesonbuild.com'): resp = open_wrapdburl(url) else: - resp = urllib.request.urlopen(url) + resp = urllib.request.urlopen(url, timeout=req_timeout) with contextlib.closing(resp) as resp: try: dlsize = int(resp.info()['Content-Length']) |