From aa777db7f90622c5102e3ed388eb755ff20a3def Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 14 Feb 2023 09:14:20 +0900 Subject: [PATCH] Revert "Replace Timeout.timeout with socket timeout" --- lib/net/smtp.rb | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/lib/net/smtp.rb b/lib/net/smtp.rb index f354708..5ac208a 100644 --- a/lib/net/smtp.rb +++ b/lib/net/smtp.rb @@ -639,12 +639,7 @@ def digest_class end def tcp_socket(address, port) - begin - Socket.tcp address, port, nil, nil, connect_timeout: @open_timeout - rescue Errno::ETIMEDOUT #raise Net:OpenTimeout instead for compatibility with previous versions - raise Net::OpenTimeout, "Timeout to open TCP connection to "\ - "#{address}:#{port} (exceeds #{@open_timeout} seconds)" - end + TCPSocket.open address, port end def do_start(helo_domain, user, secret, authtype) @@ -653,7 +648,9 @@ def do_start(helo_domain, user, secret, authtype) check_auth_method(authtype || DEFAULT_AUTH_TYPE) check_auth_args user, secret end - s = tcp_socket(@address, @port) + s = Timeout.timeout(@open_timeout, Net::OpenTimeout) do + tcp_socket(@address, @port) + end logging "Connection opened: #{@address}:#{@port}" @socket = new_internet_message_io(tls? ? tlsconnect(s, @ssl_context_tls) : s) check_response critical { recv_response() }