summaryrefslogtreecommitdiff
path: root/lib/drb
diff options
context:
space:
mode:
authorseki <seki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-01-22 14:10:36 +0000
committerseki <seki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-01-22 14:10:36 +0000
commit0805616b06da98448c8810272ac542939670a223 (patch)
tree0d580a0b9ef1883c82b8eae4b1b9293ce55a6bf2 /lib/drb
parentb0b6e67394926bc6346184cf52767476859699b8 (diff)
(accept) rescue SSLError. [druby-ja:110]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/drb')
-rw-r--r--lib/drb/ssl.rb5
1 files changed, 5 insertions, 0 deletions
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