Software /
code /
prosody
Diff
net/dns.lua @ 2997:6ccaefea80ec
Merge with tip.
author | Tobias Markmann <tm@ayena.de> |
---|---|
date | Fri, 12 Mar 2010 18:41:05 +0100 |
parent | 2742:6c0a081cd766 |
child | 3049:e54774bd73a7 |
line wrap: on
line diff
--- a/net/dns.lua Fri Mar 12 18:37:51 2010 +0100 +++ b/net/dns.lua Fri Mar 12 18:41:05 2010 +0100 @@ -532,14 +532,19 @@ if not self.server or #self.server == 0 then -- TODO log warning about no nameservers, adding opendns servers as fallback self:addnameserver("208.67.222.222"); - self:addnameserver("208.67.220.220") ; + self:addnameserver("208.67.220.220"); end else -- posix local resolv_conf = io.open("/etc/resolv.conf"); if resolv_conf then for line in resolv_conf:lines() do - local address = line:gsub("#.*$", ""):match('^%s*nameserver%s+(%d+%.%d+%.%d+%.%d+)%s*$'); - if address then self:addnameserver(address) end + line = line:gsub("#.*$", "") + :match('^%s*nameserver%s+(.*)%s*$'); + if line then + line:gsub("%f[%d.](%d+%.%d+%.%d+%.%d+)%f[^%d.]", function (address) + self:addnameserver(address) + end); + end end end if not self.server or #self.server == 0 then @@ -796,7 +801,7 @@ set(self.wanted, q.class, q.type, q.name, nil); end end - end + end return response; end