# HG changeset patch # User Kim Alvefur # Date 1525280819 -7200 # Node ID ae7cf011e46a136660cff8e178ed5972eba2c513 # Parent cac4bd0d3335d0a002f447a16498637899dcfa28 net.resolvers.basic: Support IP address literals diff -r cac4bd0d3335 -r ae7cf011e46a net/resolvers/basic.lua --- a/net/resolvers/basic.lua Wed May 02 12:39:42 2018 +0200 +++ b/net/resolvers/basic.lua Wed May 02 19:06:59 2018 +0200 @@ -1,4 +1,5 @@ local adns = require "net.adns"; +local inet_pton = require "util.net".pton; local methods = {}; local resolver_mt = { __index = methods }; @@ -25,6 +26,16 @@ self:next(cb); end + local is_ip = inet_pton(self.hostname); + if is_ip then + if #is_ip == 16 then + cb(self.conn_type.."6", self.hostname, self.port, self.extra); + elseif #is_ip == 4 then + cb(self.conn_type, self.hostname, self.port, self.extra); + end + return; + end + -- Resolve DNS to target list local dns_resolver = adns.resolver(); dns_resolver:lookup(function (answer)