aboutsummaryrefslogtreecommitdiffstats
path: root/util/sasl.lua
diff options
context:
space:
mode:
authorWaqas Hussain <waqas20@gmail.com>2010-11-02 18:58:11 +0500
committerWaqas Hussain <waqas20@gmail.com>2010-11-02 18:58:11 +0500
commit372813b78e29479f655712c651a1a57828423987 (patch)
tree2157a22cb34eb2afa3f922358cfb65cb3a0bd51b /util/sasl.lua
parent310785e05e00e43bf71fdcfc585dc1c1232c2ced (diff)
downloadprosody-372813b78e29479f655712c651a1a57828423987.tar.gz
prosody-372813b78e29479f655712c651a1a57828423987.zip
util.sasl, util.sasl_cyrus: Mechanism selection cleaned up to be more consistent.
Diffstat (limited to 'util/sasl.lua')
-rw-r--r--util/sasl.lua10
1 files changed, 4 insertions, 6 deletions
diff --git a/util/sasl.lua b/util/sasl.lua
index 3eb2db65..93b79a86 100644
--- a/util/sasl.lua
+++ b/util/sasl.lua
@@ -71,18 +71,16 @@ end
-- select a mechanism to use
function method:select(mechanism)
- if self.mech_i then
- return false;
+ if not self.selected and self.mechs[mechanism] then
+ self.selected = mechanism;
+ return true;
end
-
- self.mech_i = mechanisms[self:mechanisms()[mechanism] and mechanism];
- return (self.mech_i ~= nil);
end
-- feed new messages to process into the library
function method:process(message)
--if message == "" or message == nil then return "failure", "malformed-request" end
- return self.mech_i(self, message);
+ return mechanisms[self.selected](self, message);
end
-- load the mechanisms