diff options
| author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-28 07:38:56 +0000 |
|---|---|---|
| committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-28 07:38:56 +0000 |
| commit | 079a6492108d6282db1a7f307d5a9a19093c26ad (patch) | |
| tree | 854b8611f21a08800c63eb0feaf32dfe0ec77953 /lib | |
| parent | 9decfbf6469ef0df73d7979c8f2733cc661aadd9 (diff) | |
| download | ruby-079a6492108d6282db1a7f307d5a9a19093c26ad.tar.gz ruby-079a6492108d6282db1a7f307d5a9a19093c26ad.tar.xz ruby-079a6492108d6282db1a7f307d5a9a19093c26ad.zip | |
* lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/resolv.rb | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/resolv.rb b/lib/resolv.rb index 1fa3598e8..5fcf6420f 100644 --- a/lib/resolv.rb +++ b/lib/resolv.rb @@ -28,7 +28,6 @@ require 'thread' # # * NIS is not supported. # * /etc/nsswitch.conf is not supported. -# * IPv6 is not supported. class Resolv @@ -388,7 +387,16 @@ class Resolv # 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 @@ class Resolv # * 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 |
