aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--lib/net/imap.rb6
2 files changed, 10 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index e5aa3bfcd3..6ccbc09a26 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Apr 9 09:24:32 2007 Shugo Maeda <shugo@ruby-lang.org>
+
+ * lib/net/imap.rb (disconnect): call shutdown for
+ SSLSocket. Thanks, Technorama Ltd.
+
Sun Apr 8 13:28:17 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (defined_expr): test arguments of NODE_CALL and so
diff --git a/lib/net/imap.rb b/lib/net/imap.rb
index d7c34ad961..75d027c9ee 100644
--- a/lib/net/imap.rb
+++ b/lib/net/imap.rb
@@ -287,7 +287,11 @@ module Net
# Disconnects from the server.
def disconnect
- @sock.shutdown unless @usessl
+ if SSL::SSLSocket === @sock
+ @sock.io.shutdown
+ else
+ @sock.shutdown
+ end
@receiver_thread.join
@sock.close
end