summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSenthil Kumaran <orsenthil@gmail.com>2010-08-26 06:24:04 (GMT)
committerSenthil Kumaran <orsenthil@gmail.com>2010-08-26 06:24:04 (GMT)
commit06509381a88aa3abb71f70674108fdeb42238606 (patch)
treedfa6200c47cf0e513d574e9ff379e32123db5cdb
parent039d0a00c82fa451bc837bc4561e855d36934074 (diff)
downloadcpython-06509381a88aa3abb71f70674108fdeb42238606.zip
cpython-06509381a88aa3abb71f70674108fdeb42238606.tar.gz
cpython-06509381a88aa3abb71f70674108fdeb42238606.tar.bz2
Merged revisions 84323 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r84323 | senthil.kumaran | 2010-08-26 11:46:22 +0530 (Thu, 26 Aug 2010) | 3 lines Fix Issue8797 - Reset the basic auth retry count when response code is not 401. ........
-rw-r--r--Lib/urllib/request.py5
-rw-r--r--Misc/NEWS3
2 files changed, 7 insertions, 1 deletions
diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py
index 4beafc1..c638cfa5 100644
--- a/Lib/urllib/request.py
+++ b/Lib/urllib/request.py
@@ -799,7 +799,10 @@ class AbstractBasicAuthHandler:
if mo:
scheme, quote, realm = mo.groups()
if scheme.lower() == 'basic':
- return self.retry_http_basic_auth(host, req, realm)
+ response = self.retry_http_basic_auth(host, req, realm)
+ if response and response.code != 401:
+ self.retried = 0
+ return response
def retry_http_basic_auth(self, host, req, realm):
user, pw = self.passwd.find_user_password(realm, host)
diff --git a/Misc/NEWS b/Misc/NEWS
index 4bedeb0..4942fa2 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -97,6 +97,9 @@ C-API
Library
-------
+- Issue #8797: urllib2 does a retry for Basic Authentication failure instead of
+ falling into recursion.
+
- Issue #1194222: email.utils.parsedate now returns RFC2822 compliant four
character years even if the message contains RFC822 two character years.