net.adns: remove unused local variables t_insert and t_remove [luacheck]
[prosody.git] / net / adns.lua
index 08421f77c579dd8f3e51253ad3fe96194cc33d63..0b7247edfaa01a2f6eb494ea3a19ffa84658fb74 100644 (file)
@@ -11,14 +11,13 @@ local dns = require "net.dns";
 
 local log = require "util.logger".init("adns");
 
-local t_insert, t_remove = table.insert, table.remove;
 local coroutine, tostring, pcall = coroutine, tostring, pcall;
 
 local function dummy_send(sock, data, i, j) return (j-i)+1; end
 
-module "adns"
+local _ENV = nil;
 
-function lookup(handler, qname, qtype, qclass)
+local function lookup(handler, qname, qtype, qclass)
        return coroutine.wrap(function (peek)
                                if peek then
                                        log("debug", "Records for %s already cached, using those...", qname);
@@ -43,15 +42,16 @@ function lookup(handler, qname, qtype, qclass)
                        end)(dns.peek(qname, qtype, qclass));
 end
 
-function cancel(handle, call_handler, reason)
+local function cancel(handle, call_handler, reason)
        log("warn", "Cancelling DNS lookup for %s", tostring(handle[3]));
        dns.cancel(handle[1], handle[2], handle[3], handle[4], call_handler);
 end
 
-function new_async_socket(sock, resolver)
+local function new_async_socket(sock, resolver)
        local peername = "<unknown>";
        local listener = {};
        local handler = {};
+       local err;
        function listener.onincoming(conn, data)
                if data then
                        dns.feed(handler, data);
@@ -75,12 +75,11 @@ function new_async_socket(sock, resolver)
 
        handler.settimeout = function () end
        handler.setsockname = function (_, ...) return sock:setsockname(...); end
-       handler.setpeername = function (_, ...) peername = (...); local ret = sock:setpeername(...); _:set_send(dummy_send); return ret; end
+       handler.setpeername = function (_, ...) peername = (...); local ret, err = sock:setpeername(...); _:set_send(dummy_send); return ret, err; end
        handler.connect = function (_, ...) return sock:connect(...) end
        --handler.send = function (_, data) _:write(data);  return _.sendbuffer and _.sendbuffer(); end
        handler.send = function (_, data)
-               local getpeername = sock.getpeername;
-               log("debug", "Sending DNS query to %s", (getpeername and getpeername(sock)) or "<unconnected>");
+               log("debug", "Sending DNS query to %s", peername);
                return sock:send(data);
        end
        return handler;
@@ -88,4 +87,8 @@ end
 
 dns.socket_wrapper_set(new_async_socket);
 
-return _M;
+return {
+       lookup = lookup;
+       cancel = cancel;
+       new_async_socket = new_async_socket;
+};