summaryrefslogtreecommitdiffstats
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
commit81ea5a758b94db14c538be020846e1f9e92e8504 (patch)
tree0d580a0b9ef1883c82b8eae4b1b9293ce55a6bf2 /lib/drb
parent0c14fd842101ef86f950330a7b8d183b034ad76b (diff)
downloadruby-81ea5a758b94db14c538be020846e1f9e92e8504.tar.gz
ruby-81ea5a758b94db14c538be020846e1f9e92e8504.tar.xz
ruby-81ea5a758b94db14c538be020846e1f9e92e8504.zip
(accept) rescue SSLError. [druby-ja:110]
git-svn-id: http://svn.ruby-lang.org/repos/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 a1395351f..a35be03dd 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