diff options
author | Kim Alvefur <zash@zash.se> | 2012-12-26 20:35:40 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2012-12-26 20:35:40 +0100 |
commit | 299b8c459dcb702a672496a403376125bd501142 (patch) | |
tree | 5bbd6b49aac7077d566f6bc7eaf3298a445a5d3e /net/dns.lua | |
parent | 02a1cdf94866f4d3c7d985d659f50b5185d4f2a7 (diff) | |
parent | 020dc0052ac01b65d59bcf4e45c481ee446c6c64 (diff) | |
download | prosody-299b8c459dcb702a672496a403376125bd501142.tar.gz prosody-299b8c459dcb702a672496a403376125bd501142.zip |
Merge 0.9->trunk
Diffstat (limited to 'net/dns.lua')
-rw-r--r-- | net/dns.lua | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/dns.lua b/net/dns.lua index 5b32a56c..a134eceb 100644 --- a/net/dns.lua +++ b/net/dns.lua @@ -549,6 +549,7 @@ function resolver:decode(packet, force) -- - - - - - - - - - - - - - decode if not force then if not self.active[response.header.id] or not self.active[response.header.id][response.question.raw] then + self.active[response.header.id] = nil; return nil; end end @@ -642,6 +643,7 @@ function resolver:voidsocket(sock) self.socket[self.socketset[sock]] = nil; self.socketset[sock] = nil; end + sock:close(); end function resolver:socket_wrapper_set(func) -- - - - - - - socket_wrapper_set @@ -796,6 +798,9 @@ function resolver:servfail(sock) end end end + if next(queries) == nil then + self.active[id] = nil; + end end if num == self.best_server then @@ -852,6 +857,7 @@ function resolver:receive(rset) -- - - - - - - - - - - - - - - - - receive set(self.wanted, q.class, q.type, q.name, nil); end end + end end end |