Issue #15067 has been updated by jeremyevans0 (Jeremy Evans).

Status changed from Open to Closed

Spec was removed in commit:c4cc4725ec08f26b9f46b99e38b0eba18f733ddc.

----------------------------------------
Bug #15067: library/socket/socket/getnameinfo_spec.rb always errors with multiple IP addresses hostname
https://bugs.ruby-lang.org/issues/15067#change-81074

* Author: usa (Usaku NAKAMURA)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
If the hostname is bind with multiple IP addresses, `Socket.getnameinfo` raises `SocketError`.
It's the spec of this method.

```
irb(main):001:0> require "socket"
=> true
irb(main):002:0> Socket.getnameinfo(['AF_INET', 21, 'multi'])
Traceback (most recent call last):
        3: from C:/opt/ruby/bin/irb.cmd:21:in `<main>'
        2: from (irb):2
        1: from (irb):2:in `getnameinfo'
SocketError (sockaddr resolved to multiple nodename)
irb(main):003:0> exit
```

So, this code always reports error on such host.

library/socket/socket/getnameinfo_spec.rb:110
```ruby
      describe 'without custom flags' do
        it 'returns an Array containing the hostname and service name' do
          array = Socket.getnameinfo(@addr)  #<=== problem code
          array.should be_an_instance_of(Array)
          array[0].should include(@hostname)
```





-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>