#1177: accept 2xx responses for https too, not only http.
diff --git a/Lib/urllib.py b/Lib/urllib.py
index 96115fbe..ad0e72b 100644
--- a/Lib/urllib.py
+++ b/Lib/urllib.py
@@ -435,7 +435,9 @@
# something went wrong with the HTTP status line
raise IOError, ('http protocol error', 0,
'got a bad status line', None)
- if errcode == 200:
+ # According to RFC 2616, "2xx" code indicates that the client's
+ # request was successfully received, understood, and accepted.
+ if not (200 <= errcode < 300):
return addinfourl(fp, headers, "https:" + url)
else:
if data is None: