diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
index eab15ab..19e7cb8 100644
--- a/Lib/test/test_ssl.py
+++ b/Lib/test/test_ssl.py
@@ -8,7 +8,9 @@
 import errno
 import subprocess
 import time
+import gc
 import os
+import errno
 import pprint
 import urllib.parse, urllib.request
 import shutil
@@ -108,6 +110,25 @@
         del ss
         self.assertEqual(wr(), None)
 
+    def test_makefile_close(self):
+        # Issue #5238: creating a file-like object with makefile() shouldn't
+        # leak the underlying file descriptor.
+        ss = ssl.wrap_socket(socket.socket(socket.AF_INET))
+        fd = ss.fileno()
+        f = ss.makefile()
+        f.close()
+        # The fd is still open
+        os.read(fd, 0)
+        # Closing the SSL socket should close the fd too
+        ss.close()
+        gc.collect()
+        try:
+            os.read(fd, 0)
+        except OSError as e:
+            self.assertEqual(e.errno, errno.EBADF)
+        else:
+            self.fail("OSError wasn't raised")
+
 class NetworkedTests(unittest.TestCase):
 
     def testConnect(self):
