diff --git a/Lib/socket.py b/Lib/socket.py
index fca44ea..fb96637 100644
--- a/Lib/socket.py
+++ b/Lib/socket.py
@@ -47,12 +47,12 @@
 from _socket import *
 
 _have_ssl = False
-try:
-    import _ssl
-    from _ssl import *
-    _have_ssl = True
-except ImportError:
-    pass
+## try:
+##     import _ssl
+##     from _ssl import *
+##     _have_ssl = True
+## except ImportError:
+##     pass
 
 import os, sys, io
 
diff --git a/Lib/ssl.py b/Lib/ssl.py
index 99f6257..77a2ceb 100644
--- a/Lib/ssl.py
+++ b/Lib/ssl.py
@@ -1,6 +1,8 @@
 # Wrapper module for _ssl, providing some additional facilities
 # implemented in Python.  Written by Bill Janssen.
 
+raise ImportError("ssl.py is temporarily out of order")
+
 """\
 This module provides some more Pythonic support for SSL.
 
diff --git a/Lib/test/test_socket_ssl.py b/Lib/test/test_socket_ssl.py
index a003038..fd4383f 100644
--- a/Lib/test/test_socket_ssl.py
+++ b/Lib/test/test_socket_ssl.py
@@ -210,8 +210,6 @@
     if not hasattr(socket, "ssl"):
         raise test_support.TestSkipped("socket module has no ssl support")
 
-    raise test_support.TestSkipped("Disabling this until ssl.py is fixed")
-
     tests = [BasicTests]
 
     if test_support.is_resource_enabled('network'):
diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
index de57728..35c6af9 100644
--- a/Lib/test/test_ssl.py
+++ b/Lib/test/test_ssl.py
@@ -338,8 +338,6 @@
     if skip_expected:
         raise test_support.TestSkipped("socket module has no ssl support")
 
-    raise test_support.TestSkipped("Disabling this until ssl.py is fixed")
-
     global CERTFILE
     CERTFILE = os.path.join(os.path.dirname(__file__) or os.curdir,
                             "keycert.pem")
