summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--lib/drb/ssl.rb5
2 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index a5bddd4cd1..79cb793a9e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Sat Jan 22 22:59:08 2005 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
+
+ * lib/drb/ssl.rb (accept): rescue SSLError. [druby-ja:110]
+
Sat Jan 22 22:27:28 2005 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/drb/unix.rb: fail if UNIXFileOwner is set. [druby-ja:111]
diff --git a/lib/drb/ssl.rb b/lib/drb/ssl.rb
index a1395351f5..a35be03dd8 100644
--- a/lib/drb/ssl.rb
+++ b/lib/drb/ssl.rb
@@ -171,6 +171,7 @@ module DRb
end
def accept
+ begin
while true
soc = @socket.accept
break if (@acl ? @acl.allow_socket?(soc) : true)
@@ -178,6 +179,10 @@ module DRb
end
ssl = @config.accept(soc)
self.class.new(uri, ssl, @config, true)
+ rescue OpenSSL::SSL::SSLError
+ warn("#{__FILE__}:#{__LINE__}: warning: #{$!.message} (#{$!.class})") if verbose
+ retry
+ end
end
end