From c03e9b5ddc206873cecacb17b9b21274273523f0 Mon Sep 17 00:00:00 2001 From: Tobias Markmann Date: Wed, 19 Aug 2009 22:16:27 +0200 Subject: Allow ampersands in passwords for SASL PLAIN mechanism and fixing a typo. --- util/sasl.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'util/sasl.lua') diff --git a/util/sasl.lua b/util/sasl.lua index 6305d414..7ced9f8a 100644 --- a/util/sasl.lua +++ b/util/sasl.lua @@ -20,7 +20,7 @@ local generate_uuid = require "util.uuid".generate; local t_insert, t_concat = table.insert, table.concat; local to_byte, to_char = string.byte, string.char; local to_unicode = require "util.encodings".idna.to_unicode; -local saslprep = require "utii.encodings".stringprep.saslprep; +local saslprep = require "util.encodings".stringprep.saslprep; local s_match = string.match; local gmatch = string.gmatch local string = string @@ -37,9 +37,9 @@ local function new_plain(realm, password_handler) if message == "" or message == nil then return "failure", "malformed-request" end local response = message - local authorization = s_match(response, "([^&%z]+)") - local authentication = s_match(response, "%z([^&%z]+)%z") - local password = s_match(response, "%z[^&%z]+%z([^&%z]+)") + local authorization = s_match(response, "([^%z]+)") + local authentication = s_match(response, "%z([^%z]+)%z") + local password = s_match(response, "%z[^%z]+%z([^%z]+)") authorization, authentication, password = saslprep(authorization), saslprep(authentication), saslprep(password); if authentication == nil or password == nil then return "failure", "malformed-request" end -- cgit v1.2.3