Issue #15067 has been reported by usa (Usaku NAKAMURA).

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

* Author: usa (Usaku NAKAMURA)
* Status: Open
* 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>