Object
Dnsruby::Hosts is a hostname resolver that uses the system hosts file
Dnsruby::Hosts.new(hosts=’/etc/hosts’)
Dnsruby::Hosts#each_address(name) {|address| …}
address lookup methods.
Dnsruby::Hosts#each_name(address) {|name| …}
hostnames lookup methods.
Creates a new Dnsruby::Hosts using filename for its data source
# File lib/Dnsruby/Hosts.rb, line 43
43: def initialize(filename = DefaultFileName)
44: @filename = filename
45: @mutex = Mutex.new
46: @initialized = nil
47: end
Iterates over all IP addresses for name retrieved from the hosts file
# File lib/Dnsruby/Hosts.rb, line 98
98: def each_address(name, &proc)
99: lazy_initialize
100: if @name2addr.include?(name)
101: @name2addr[name].each(&proc)
102: end
103: end
Iterates over all hostnames for address retrieved from the hosts file
# File lib/Dnsruby/Hosts.rb, line 119
119: def each_name(address, &proc)
120: lazy_initialize
121: if @addr2name.include?(address)
122: @addr2name[address].each(&proc)
123: end
124: end
Gets the first IP address for name from the hosts file
# File lib/Dnsruby/Hosts.rb, line 85
85: def getaddress(name)
86: each_address(name) {|address| return address}
87: raise ResolvError.new("#{@filename} has no name: #{name}")
88: end
Gets all IP addresses for name from the hosts file
# File lib/Dnsruby/Hosts.rb, line 91
91: def getaddresses(name)
92: ret = []
93: each_address(name) {|address| ret << address}
94: return ret
95: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.