File tree Expand file tree Collapse file tree 1 file changed +6
-8
lines changed Expand file tree Collapse file tree 1 file changed +6
-8
lines changed Original file line number Diff line number Diff line change @@ -19,18 +19,12 @@ def initialize(server)
19
19
yield self if block_given?
20
20
end
21
21
22
- def prepare_socket ( server , close = false )
22
+ def prepare_socket ( server )
23
23
socket = server [ :socket ]
24
24
encryption = server [ :encryption ]
25
25
26
26
@conn = socket
27
27
setup_encryption encryption if encryption
28
- rescue
29
- # Ensure the connection is closed when requested in the event of an SSL
30
- # setup failure.
31
- @conn . close if close
32
- @conn = nil
33
- raise
34
28
end
35
29
36
30
def open_connection ( server )
@@ -40,10 +34,14 @@ def open_connection(server)
40
34
errors = [ ]
41
35
hosts . each do |host , port |
42
36
begin
43
- prepare_socket ( server . merge ( socket : TCPSocket . new ( host , port ) ) , true )
37
+ socket = TCPSocket . new ( host , port )
38
+ prepare_socket ( server . merge ( socket : socket ) )
44
39
return
45
40
rescue Net ::LDAP ::Error , SocketError , SystemCallError ,
46
41
OpenSSL ::SSL ::SSLError => e
42
+ # Ensure the connection is closed in the event a setup failure.
43
+ socket . close unless socket . nil?
44
+ socket = nil
47
45
errors << [ e , host , port ]
48
46
end
49
47
end
You can’t perform that action at this time.
0 commit comments