ruby-changes:3270
From: ko1@a...
Date: 28 Dec 2007 16:39:16 +0900
Subject: [ruby-changes:3270] naruse - Ruby:r14763 (trunk): * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address.
naruse 2007-12-28 16:38:56 +0900 (Fri, 28 Dec 2007) New Revision: 14763 Modified files: trunk/ChangeLog trunk/lib/resolv.rb Log: * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14763&r2=14762 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/lib/resolv.rb?r1=14763&r2=14762 Index: ChangeLog =================================================================== --- ChangeLog (revision 14762) +++ ChangeLog (revision 14763) @@ -1,3 +1,7 @@ +Fri Dec 28 16:36:33 2007 NARUSE, Yui <naruse@a...> + + * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address. + Fri Dec 28 16:10:00 2007 Eric Hodel <drbrain@s...> * lib/rdoc/dot/dot.rb: Move to lib/rdoc/dot.rb. Fix namespacing. Index: lib/resolv.rb =================================================================== --- lib/resolv.rb (revision 14762) +++ lib/resolv.rb (revision 14763) @@ -28,7 +28,6 @@ # # * NIS is not supported. # * /etc/nsswitch.conf is not supported. -# * IPv6 is not supported. class Resolv @@ -388,7 +387,16 @@ # be a Resolv::IPv4 or Resolv::IPv6 def each_address(name) - each_resource(name, Resource::IN::A) {|resource| yield resource.address} + buf = [] + each_resource(name, Resource::IN::ANY) do |resource| + case resource.address + when Resolv::IPv4 + yield resource.address + when Resolv::IPv6 + buf << resource.address + end + end + buf.each {|resource| yield resource.address} end ## @@ -445,7 +453,6 @@ # * Resolv::DNS::Resource::IN::A # * Resolv::DNS::Resource::IN::AAAA # * Resolv::DNS::Resource::IN::ANY - # * Resolv::DNS::Resource::IN::ANY # * Resolv::DNS::Resource::IN::CNAME # * Resolv::DNS::Resource::IN::HINFO # * Resolv::DNS::Resource::IN::MINFO -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml