diff options
author | Jeremy Evans <[email protected]> | 2019-08-26 20:30:59 -0700 |
---|---|---|
committer | Jeremy Evans <[email protected]> | 2023-11-25 11:40:08 -0800 |
commit | 87c3deacf431dd1ee4538ba15db54f884fa8a918 () | |
tree | 6e525a054646dbaabd24a5bb3f20a099111df9b7 | |
parent | 1b7376423d3bf79ba37856eae8f45d59ecc9c170 (diff) |
[ruby/resolv] Support a :use_ipv6 option to Resolv#initialize
When set, supports returning IPv6 results even if there is no public IPv6 address for the system. Implements Ruby Feature #14922 https://.com/ruby/resolv/commit/09d141de38
-rw-r--r-- | lib/resolv.rb | 17 |
1 files changed, 15 insertions, 2 deletions
@@ -84,8 +84,8 @@ class Resolv ## # Creates a new Resolv using +resolvers+. - def initialize(resolvers=[Hosts.new, DNS.new]) - @resolvers = resolvers end ## @@ -410,6 +410,11 @@ class Resolv end def use_ipv6? # :nodoc: begin list = Socket.ip_address_list rescue NotImplementedError @@ -1008,6 +1013,7 @@ class Resolv @mutex.synchronize { unless @initialized @nameserver_port = [] @search = nil @ndots = 1 case @config_info @@ -1032,6 +1038,9 @@ class Resolv if config_hash.include? :nameserver_port @nameserver_port = config_hash[:nameserver_port].map {|ns, port| [ns, (port || Port)] } end @search = config_hash[:search] if config_hash.include? :search @ndots = config_hash[:ndots] if config_hash.include? :ndots @raise_timeout_errors = config_hash[:raise_timeout_errors] @@ -1088,6 +1097,10 @@ class Resolv @nameserver_port end def generate_candidates(name) candidates = nil name = Name.create(name) |