Project

General

Profile

Actions

Misc #10907

closed

Documentation of Addrinfo.new suggests default family of PF_UNSPEC while in practise it appears to be AF_INET

Added by yorickpeterse (Yorick Peterse) about 9 years ago. Updated about 9 years ago.

Status:
Rejected
Assignee:
-
[ruby-core:68320]

Description

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.


Related issues 1 (0 open1 closed)

Related to Ruby master - Bug #10908: Addrinfo.new appears to ignore the afamily argument when using a String for sockaddrRejected02/26/2015Actions
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0