diff options
author | Senthil Kumaran <orsenthil@gmail.com> | 2009-05-01 06:00:23 (GMT) |
---|---|---|
committer | Senthil Kumaran <orsenthil@gmail.com> | 2009-05-01 06:00:23 (GMT) |
commit | 4947606ecca1248bdfa9a71c7ea28239d0f64f56 (patch) | |
tree | e926f833656e2705062470fe35714805beb168c5 /Lib/urllib | |
parent | 55708cce31442d13768843d85f424208e9fd0f42 (diff) | |
download | cpython-4947606ecca1248bdfa9a71c7ea28239d0f64f56.zip cpython-4947606ecca1248bdfa9a71c7ea28239d0f64f56.tar.gz cpython-4947606ecca1248bdfa9a71c7ea28239d0f64f56.tar.bz2 |
Fix for Issue1648102, based on the MSDN spec: If this parameter specifies the
"<local>" macro as the only entry, this function bypasses any host name that
does not contain a period.
Diffstat (limited to 'Lib/urllib')
-rw-r--r-- | Lib/urllib/request.py | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py index 59ec7b8..42e6d17 100644 --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py @@ -2244,18 +2244,11 @@ elif os.name == 'nt': # '<local>' string by the localhost entry and the corresponding # canonical entry. proxyOverride = proxyOverride.split(';') - i = 0 - while i < len(proxyOverride): - if proxyOverride[i] == '<local>': - proxyOverride[i:i+1] = ['localhost', - '127.0.0.1', - socket.gethostname(), - socket.gethostbyname( - socket.gethostname())] - i += 1 - # print proxyOverride # now check if we match one of the registry values. for test in proxyOverride: + if test == '<local>': + if '.' not in rawHost: + return 1 test = test.replace(".", r"\.") # mask dots test = test.replace("*", r".*") # change glob sequence test = test.replace("?", r".") # change glob char |