Issue #10907 has been updated by Yorick Peterse.


By the way, this was tested using `ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]` on Arch Linux (`Linux yorickpeterse-macbook-olery 3.17.6-1-ARCH #1 SMP PREEMPT Sun Dec 7 23:43:32 UTC 2014 x86_64 GNU/Linux`).

----------------------------------------
Misc #10907: Documentation of Addrinfo.new suggests default family of PF_UNSPEC while in practise it appears to be AF_INET
https://bugs.ruby-lang.org/issues/10907#change-51674

* Author: Yorick Peterse
* Status: Open
* Priority: Low
* Assignee: 
----------------------------------------
The documentation of Addrinfo.new states the following:

> family is specified as an integer to specify the protocol family such as
> Socket::PF_INET. It can be a symbol or a string which is the constant name
> with or without PF_ prefix such as :INET, :INET6, :UNIX, "PF_INET", etc. If
> omitted, PF_UNSPEC is assumed.

However, the behaviour contradicts this:

    Addrinfo.new(Socket.sockaddr_in(80, 'localhost')).afamily == Socket::PF_UNSPEC # => false
    Addrinfo.new(Socket.sockaddr_in(80, 'localhost')).afamily == Socket::AF_INET   # => true

The question here is, which of the following is the case:

1. The documentation is simply incorrect, the default is always `AF_INET`
2. The behaviour is incorrect, it should be `PF_UNSPEC` instead of `AF_INET`
3. This is platform specific (meaning the documentation should state this)

On Twitter Matz mentioned
(<https://twitter.com/YorickPeterse/status/570700823526830080>) thinking it was
platform specific, but I'd like to be 100% sure about this.



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