diff --git a/Lib/imaplib.py b/Lib/imaplib.py index 1b375465af6..e020747e6ce 100644 --- a/Lib/imaplib.py +++ b/Lib/imaplib.py @@ -260,6 +260,7 @@ class IMAP4: def shutdown(self): """Close I/O established in "open".""" self.file.close() + self.sock.shutdown(socket.SHUT_RDWR) self.sock.close() diff --git a/Lib/test/test_imaplib.py b/Lib/test/test_imaplib.py index db07dd577bd..58e432ae634 100644 --- a/Lib/test/test_imaplib.py +++ b/Lib/test/test_imaplib.py @@ -220,6 +220,7 @@ class RemoteIMAPTest(unittest.TestCase): def test_logout(self): rs = self.server.logout() + self.server = None self.assertEqual(rs[0], 'BYE') diff --git a/Misc/ACKS b/Misc/ACKS index 0311ae96870..4a36b6dd16f 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -121,6 +121,7 @@ Tony Campbell Brett Cannon Mike Carlton Terry Carroll +Lorenzo M. Catucci Donn Cave Per Cederqvist Octavian Cerna diff --git a/Misc/NEWS b/Misc/NEWS index 18938605465..9f18bbd9b4f 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -143,6 +143,9 @@ C-API Library ------- +- Issue #4471: Properly shutdown socket in IMAP.shutdown(). Patch by + Lorenzo M. Catucci. + - Fix IMAP.login() to work properly. - Issue #10126: Fix distutils' test_build when Python was built with