aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2019-11-24 04:26:44 +0100
committerKim Alvefur <zash@zash.se>2019-11-24 04:26:44 +0100
commitfcef79d2e9f9481177d68e190b06ff5ebe8f0e19 (patch)
tree809447289957579a10205e56f740ec8e28d740bb
parentb8c255a83ce3d953798dbb60686eb00b75135a0e (diff)
downloadprosody-fcef79d2e9f9481177d68e190b06ff5ebe8f0e19.tar.gz
prosody-fcef79d2e9f9481177d68e190b06ff5ebe8f0e19.zip
net.resolvers.basic: Fix resolution of IPv6 literals (in brackets) (fixes #1459)
-rw-r--r--net/resolvers/basic.lua3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/resolvers/basic.lua b/net/resolvers/basic.lua
index e3a94382..93182fda 100644
--- a/net/resolvers/basic.lua
+++ b/net/resolvers/basic.lua
@@ -59,6 +59,9 @@ local function new(hostname, port, conn_type, extra)
local targets = nil;
local is_ip = inet_pton(hostname);
+ if not is_ip and hostname:sub(1,1) == '[' then
+ is_ip = inet_pton(hostname:sub(2,-2));
+ end
if is_ip then
if #is_ip == 16 then
targets = { { conn_type.."6", hostname, port, extra } };