Merge 0.10->trunk
[prosody.git] / net / dns.lua
index bd42db73800c13f262034159b0b1657d8b77a205..bd5c260ec2f1a638843c662544139e1b2eb6e920 100644 (file)
@@ -629,10 +629,10 @@ function resolver:getsocket(servernum)    -- - - - - - - - - - - - - getsocket
        else
                sock, err = socket.udp();
        end
+       if sock and self.socket_wrapper then sock, err = self.socket_wrapper(sock, self); end
        if not sock then
                return nil, err;
        end
-       if self.socket_wrapper then sock = self.socket_wrapper(sock, self); end
        sock:settimeout(0);
        -- todo: attempt to use a random port, fallback to 0
        sock:setsockname('*', 0);
@@ -753,7 +753,7 @@ function resolver:query(qname, qtype, qclass)    -- - - - - - - - - - -- query
                return nil, err;
        end
        conn:send (o.packet)
-       
+
        if timer and self.timeout then
                local num_servers = #self.server;
                local i = 1;
@@ -849,7 +849,7 @@ function resolver:receive(rset)    -- - - - - - - - - - - - - - - - -  receive
                                        -- retire the query
                                        local queries = self.active[response.header.id];
                                        queries[response.question.raw] = nil;
-                                       
+
                                        if not next(queries) then self.active[response.header.id] = nil; end
                                        if not next(self.active) then self:closeall(); end
 
@@ -864,7 +864,7 @@ function resolver:receive(rset)    -- - - - - - - - - - - - - - - - -  receive
                                                set(self.wanted, q.class, q.type, q.name, nil);
                                        end
                                end
-                               
+
                        end
                end
        end