From: Senthil Kumaran Date: Sat, 6 Aug 2011 04:24:33 +0000 (+0800) Subject: Fix closes issue12698 - make the no_proxy environment variable handling a bit lenient... X-Git-Tag: v2.7.3rc1~537 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b5bd4c88b5de771647cc644b4e50e701cadba08c;p=thirdparty%2FPython%2Fcpython.git Fix closes issue12698 - make the no_proxy environment variable handling a bit lenient (accomodate spaces in between the items) --- diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py index e7e54a2dd89d..401dd5ca0cbc 100644 --- a/Lib/test/test_urllib.py +++ b/Lib/test/test_urllib.py @@ -114,6 +114,9 @@ class ProxyTests(unittest.TestCase): proxies = urllib.getproxies_environment() # getproxies_environment use lowered case truncated (no '_proxy') keys self.assertEqual('localhost', proxies['no']) + # List of no_proxies with space. + self.env.set('NO_PROXY', 'localhost, anotherdomain.com, newdomain.com') + self.assertTrue(urllib.proxy_bypass_environment('anotherdomain.com')) class urlopen_HttpTests(unittest.TestCase): diff --git a/Lib/urllib.py b/Lib/urllib.py index aac235da2c54..1261ec14a176 100644 --- a/Lib/urllib.py +++ b/Lib/urllib.py @@ -1366,7 +1366,8 @@ def proxy_bypass_environment(host): # strip port off host hostonly, port = splitport(host) # check if the host ends with any of the DNS suffixes - for name in no_proxy.split(','): + no_proxy_list = [proxy.strip() for proxy in no_proxy.split(',')] + for name in no_proxy_list: if name and (hostonly.endswith(name) or host.endswith(name)): return 1 # otherwise, don't bypass