From a108ff1ca61ac9f73ef99dbd7b0c054811afe5ff Mon Sep 17 00:00:00 2001 From: Tobias Markmann Date: Sat, 8 Aug 2009 21:13:18 +0200 Subject: Fixing a SASL issue by always passing the realm from SASL framework init to the handlers. --- util/sasl.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/sasl.lua b/util/sasl.lua index 48412ea7..008b6575 100644 --- a/util/sasl.lua +++ b/util/sasl.lua @@ -198,7 +198,7 @@ local function new_digest_md5(realm, credentials_handler) --TODO maybe realm support self.username = response["username"]; - local password_encoding, Y = self.credentials_handler("DIGEST-MD5", response["username"], to_unicode(domain), response["realm"], decoder); + local password_encoding, Y = self.credentials_handler("DIGEST-MD5", response["username"], self.realm, response["realm"], decoder); if Y == nil then return "failure", "not-authorized" elseif Y == false then return "failure", "account-disabled" end local A1 = ""; -- cgit v1.2.3 From 7ef662388b28c77bda969c1ea28995b7988a8fb6 Mon Sep 17 00:00:00 2001 From: Tobias Markmann Date: Sun, 9 Aug 2009 21:19:03 +0200 Subject: Moving realm at the beginning of the digest-md5 message send by the server. --- util/sasl.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/sasl.lua b/util/sasl.lua index 008b6575..444d4cf4 100644 --- a/util/sasl.lua +++ b/util/sasl.lua @@ -70,11 +70,11 @@ local function new_digest_md5(realm, credentials_handler) if type(message) ~= "table" then error("serialize needs an argument of type table.") end -- testing all possible values + if message["realm"] then data = data..[[realm="]]..message.realm..[[",]] end if message["nonce"] then data = data..[[nonce="]]..message.nonce..[[",]] end if message["qop"] then data = data..[[qop="]]..message.qop..[[",]] end if message["charset"] then data = data..[[charset=]]..message.charset.."," end if message["algorithm"] then data = data..[[algorithm=]]..message.algorithm.."," end - if message["realm"] then data = data..[[realm="]]..message.realm..[[",]] end if message["rspauth"] then data = data..[[rspauth=]]..message.rspauth.."," end data = data:gsub(",$", "") return data -- cgit v1.2.3