aboutsummaryrefslogtreecommitdiffstats
path: root/lib/net/pop.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/net/pop.rb')
-rw-r--r--lib/net/pop.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/net/pop.rb b/lib/net/pop.rb
index a6374cd78c..f3009f9926 100644
--- a/lib/net/pop.rb
+++ b/lib/net/pop.rb
@@ -541,8 +541,10 @@ module Net
# internal method for Net::POP3.start
def do_start(account, password) # :nodoc:
- s = Timeout.timeout(@open_timeout, Net::OpenTimeout) do
- TCPSocket.open(@address, port)
+ begin
+ s = Socket.tcp(@address, port, connect_timeout: @open_timeout)
+ rescue Errno::ETIMEDOUT
+ raise Net::OpenTimeout, "execution expired"
end
if use_ssl?
raise 'openssl library not installed' unless defined?(OpenSSL)