# HG changeset patch # User Matthew Wild # Date 1387159415 0 # Node ID f3817912e8b2357332d46f374ae51e7bc81dc745 # Parent 355f8b59bf1b43c06d402dc6defa21958549a84e util.jid: Strip trailing '.' when normalizing hostnames diff -r 355f8b59bf1b -r f3817912e8b2 util/jid.lua --- a/util/jid.lua Sat Dec 14 17:25:17 2013 +0100 +++ b/util/jid.lua Mon Dec 16 02:03:35 2013 +0000 @@ -8,7 +8,7 @@ -local match = string.match; +local match, sub = string.match, string.sub; local nodeprep = require "util.encodings".stringprep.nodeprep; local nameprep = require "util.encodings".stringprep.nameprep; local resourceprep = require "util.encodings".stringprep.resourceprep; @@ -47,6 +47,9 @@ local function _prepped_split(jid) local node, host, resource = _split(jid); if host then + if sub(host, -1, -1) == "." then -- Strip empty root label + host = sub(host, 1, -2); + end host = nameprep(host); if not host then return; end if node then