Issue #5097 has been updated by Jeremy Evans.


=begin
  > > The pktinfo_sockets hash here is never used.  And even if it was, because you are not adding the '::' address to ip_addrs if ipv6_recvpktinfo, no socket is being created for it, so you will +never hit lines 548-549.  The attached patch removes the "&& !ipv6_recvpktinfo" from 516 and the pktinfo_sockets hash handling.
  > 
  > Thank you for notifying pktinfo_sockets is not used.
  > 
  > However I don't understand why ip_list doesn't contain '::' address on OpenBSD.
  >
  >    516        elsif ai.ipv6? && ai.ip_address == "::" && !ipv6_recvpktinfo
  >    517          local_addrs.each {|a|
  >    518            next if !a.ipv6?
  >    519            ip_list << Addrinfo.new(a.to_sockaddr, :INET6, :DGRAM, 0);
  >    520          }
  >    521        else
  >    522          ip_list << ai
  >    523        end
  > 
  > The line 522 should add '::' address to ip_list on platforms which supports IPV6_PKTINFO. 
  
  The issue is that Socket.ip_address_list and Addrinfo.foreach return different things.

    $ ruby19 -rsocket -e 'p Socket.ip_address_list'
    [#<Addrinfo: ::1>, #<Addrinfo: fe80::1%lo0>, #<Addrinfo: 127.0.0.1>, #<Addrinfo: 192.168.1.4>, #<Addrinfo: fe80::92fb:a6ff:feed:afa1%re0>]
    $ ruby19 -rsocket -e 'Addrinfo.foreach(nil, 0, nil, :DGRAM, nil, Socket::AI_PASSIVE) {|ai| p ai}'     
    #<Addrinfo: :: UDP>
    #<Addrinfo: 0.0.0.0 UDP>

  > Your patch, removing "&& !ipv6_recvpktinfo", means we don't use IPV6_PKTINFO.  It is not my intent.  (and it doesn't supports dynamic IP address change.)

  I can see where it wouldn't support dynamic IP address change.  But it also doesn't listen on all local addresses (#<Addrinfo: fe80::92fb:a6ff:feed:afa1%re0> in this case), and that fails one of the tests.  So either the test needs to be changed to not require that behavior or the code needs to be change to listen on all local addresses in addition to listening on '::' in the ipv6_recvpktinfo case.
=end
----------------------------------------
Feature #5097: Supported platforms of Ruby 1.9.3
http://redmine.ruby-lang.org/issues/5097

Author: Yui NARUSE
Status: Assigned
Priority: Normal
Assignee: Yui NARUSE
Category: 
Target version: 1.9.3


Let's decide the supported platforms.

== Background

http://redmine.ruby-lang.org/projects/ruby-19/wiki/SupportedPlatforms

== Process

If you want to support a platform, please declare.
But when a platform dependent bug is reported, it will be assigned to you.

== Current Maintainer

mswin32, mswin64 (Microsoft Windows):
  NAKAMURA Usaku (usa)
mingw32 (Minimalist GNU for Windows):
  Nobuyoshi Nakada (nobu)
IA-64 (Debian GNU/Linux):
  TAKANO Mitsuhiro (takano32)
Symbian OS:
  Alexander Zavorine (azov)
AIX:
  Yutaka Kanemoto (kanemoto)
FreeBSD:
  Akinori MUSHA (knu)
Solaris:
  Naohisa Goto
RHEL, CentOS
  KOSAKI Motohiro

Platforms which doesn't have a maintainer are following:
* Debian
* Ubuntu
* Mac OS X (LLVM related issues)
* cygwin (don't work)
* NetBSD (works)
* OpenBSD (it may not work)
* DragonFlyBSD (don't work)


-- 
http://redmine.ruby-lang.org