summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2010-11-09 23:10:33 +0000
committerAntoine Pitrou <solipsis@pitrou.net>2010-11-09 23:10:33 +0000
commitd79f3c8b3a544de869e01d8f229f114d7eb2dfa8 (patch)
tree5f0bbdb7c1d1b0255829f36309f43a267eb640c3
parentb1436f185dac249f0f6dc342b2a543ae2d1db63d (diff)
downloadcpython-git-d79f3c8b3a544de869e01d8f229f114d7eb2dfa8.tar.gz
Issue #4471: Properly shutdown socket in IMAP.shutdown(). Patch by
Lorenzo M. Catucci.
-rw-r--r--Lib/imaplib.py1
-rw-r--r--Lib/test/test_imaplib.py1
-rw-r--r--Misc/ACKS1
-rw-r--r--Misc/NEWS3
4 files changed, 6 insertions, 0 deletions
diff --git a/Lib/imaplib.py b/Lib/imaplib.py
index 1b375465af..e020747e6c 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 8d86ce6f4b..351659d7ce 100644
--- a/Lib/test/test_imaplib.py
+++ b/Lib/test/test_imaplib.py
@@ -217,6 +217,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 361cdf94f4..3cb3a29595 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -130,6 +130,7 @@ Tony Campbell
Brett Cannon
Mike Carlton
Terry Carroll
+Lorenzo M. Catucci
Donn Cave
Charles Cazabon
Per Cederqvist
diff --git a/Misc/NEWS b/Misc/NEWS
index 19e653cb32..5cd664755a 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -60,6 +60,9 @@ Core and Builtins
Library
-------
+- Issue #4471: Properly shutdown socket in IMAP.shutdown(). Patch by
+ Lorenzo M. Catucci.
+
- Fix IMAP.login() to work properly.
- Issue #9244: multiprocessing pool worker processes could terminate