Skip to content
instance method

Addrinfo#connect_to

(::String host, ::Integer port, ?timeout: ::Numeric) { (::Socket) -> void } -> void
(::String host, ::Integer port, ?timeout: ::Numeric) -> ::Socket
(::Addrinfo sockaddr, ?timeout: ::Numeric) { (::Socket) -> void } -> void
(::Addrinfo sockaddr, ?timeout: ::Numeric) -> ::Socket
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.

Example
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
}