diff options
author | guido@google.com <guido@google.com> | 2011-03-29 11:41:02 -0700 |
---|---|---|
committer | guido@google.com <guido@google.com> | 2011-03-29 11:41:02 -0700 |
commit | a119df91f33724f64e6bc1ecb484eeaa30ace014 (patch) | |
tree | be27f880b0ed6fdf79367fddc1c58019f07ca4ac /Lib/test/test_urllib.py | |
parent | b938c8c25316b69f1d5df2c7880a9f6b87e7c2fa (diff) | |
download | cpython-git-a119df91f33724f64e6bc1ecb484eeaa30ace014.tar.gz |
Issue 11662: Fix vulnerability in urllib/urllib2.
(This version is a cleaned-up backport of a fix by Senthil Kumaran.)
Diffstat (limited to 'Lib/test/test_urllib.py')
-rw-r--r-- | Lib/test/test_urllib.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py index 422831e35f..2b8852127b 100644 --- a/Lib/test/test_urllib.py +++ b/Lib/test/test_urllib.py @@ -2,6 +2,7 @@ import urllib.parse import urllib.request +import urllib.error import http.client import email.message import io @@ -183,6 +184,21 @@ Content-Type: text/html; charset=iso-8859-1 finally: self.unfakehttp() + def test_invalid_redirect(self): + # urlopen() should raise IOError for many error codes. + self.fakehttp(b'''HTTP/1.1 302 Found +Date: Wed, 02 Jan 2008 03:03:54 GMT +Server: Apache/1.3.33 (Debian GNU/Linux) mod_ssl/2.8.22 OpenSSL/0.9.7e +Location: file://guidocomputer.athome.com:/python/license +Connection: close +Content-Type: text/html; charset=iso-8859-1 +''') + try: + self.assertRaises(urllib.error.HTTPError, urlopen, + "http://python.org/") + finally: + self.unfakehttp() + def test_empty_socket(self): # urlopen() raises IOError if the underlying socket does not send any # data. (#1680230) |