Issue1177
r58207 and r58247 patch logic is reversed.  I noticed this when I
tried to use urllib to retrieve a file which required auth.

Fix that and add a test for 401 error to verify.
diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py
index 1ca197f..55a03da 100644
--- a/Lib/test/test_urllib.py
+++ b/Lib/test/test_urllib.py
@@ -126,6 +126,19 @@
         finally:
             self.unfakehttp()
 
+    def test_read_bogus(self):
+        "urlopen() should raise IOError for many error codes."
+        self.fakehttp('''HTTP/1.1 401 Authentication Required
+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
+Connection: close
+Content-Type: text/html; charset=iso-8859-1
+''')
+        try:
+            self.assertRaises(IOError, urllib.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) """