Method: Addrinfo#connect_to

Defined in:
lib/socket.rb

#connect_to(*args, timeout: nil, &block) ⇒ Object

:call-seq:

addrinfo.connect_to([remote_addr_args], [opts]) {|socket| ... }
addrinfo.connect_to([remote_addr_args], [opts])

creates a socket connected to remote_addr_args and bound to self.

The optional last argument opts is options represented by a hash. opts may have following options:

:timeout

specify the timeout in seconds.

If a block is given, it is called with the socket and the value of the block is returned. The socket is returned otherwise.

Addrinfo.tcp("0.0.0.0", 4649).connect_to("www.ruby-lang.org", 80) {|s|
  s.print "GET / HTTP/1.0\r\nHost: www.ruby-lang.org\r\n\r\n"
  puts s.read
}


163
164
165
166
# File 'lib/socket.rb', line 163

def connect_to(*args, timeout: nil, &block)
  remote_addrinfo = family_addrinfo(*args)
  remote_addrinfo.connect_internal(self, timeout, &block)
end