From 7e8fd5ed22f19ede1290fdc692c607556d4e16da Mon Sep 17 00:00:00 2001 From: Senthil Kumaran Date: Thu, 26 Aug 2010 06:20:13 +0000 Subject: 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. ........ --- Lib/urllib2.py | 5 ++++- Misc/NEWS | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Lib/urllib2.py b/Lib/urllib2.py index 0821761..5c717a4 100644 --- a/Lib/urllib2.py +++ b/Lib/urllib2.py @@ -843,7 +843,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 fcd4ae0..deceec4 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -33,6 +33,9 @@ Core and Builtins 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. -- cgit v0.12