bpo-44011: Fix asyncio tests without ssl module (GH-25840)

Signed-off-by: Christian Heimes <christian@python.org>
diff --git a/Lib/asyncio/sslproto.py b/Lib/asyncio/sslproto.py
index e71875b..79734ab 100644
--- a/Lib/asyncio/sslproto.py
+++ b/Lib/asyncio/sslproto.py
@@ -12,7 +12,8 @@
 from . import transports
 from .log import logger
 
-SSLAgainErrors = (ssl.SSLWantReadError, ssl.SSLSyscallError)
+if ssl is not None:
+    SSLAgainErrors = (ssl.SSLWantReadError, ssl.SSLSyscallError)
 
 
 class SSLProtocolState(enum.Enum):
diff --git a/Lib/test/test_asyncio/test_ssl.py b/Lib/test/test_asyncio/test_ssl.py
index 38235c6..4dcd3a0 100644
--- a/Lib/test/test_asyncio/test_ssl.py
+++ b/Lib/test/test_asyncio/test_ssl.py
@@ -3,14 +3,18 @@
 import contextlib
 import gc
 import logging
-import os
 import select
 import socket
-import ssl
 import tempfile
 import threading
 import time
 import weakref
+import unittest
+
+try:
+    import ssl
+except ImportError:
+    ssl = None
 
 from test import support
 from test.test_asyncio import utils as test_utils
@@ -54,6 +58,7 @@ def connection_lost(self, exc):
             self.done.set_result(None)
 
 
+@unittest.skipIf(ssl is None, 'No ssl module')
 class TestSSL(test_utils.TestCase):
 
     PAYLOAD_SIZE = 1024 * 100