Software /
code /
prosody
Diff
util/sasl_cyrus.lua @ 3550:5e5d136d9de0
util.sasl, util.sasl_cyrus: Mechanism selection cleaned up to be more consistent.
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Tue, 02 Nov 2010 18:58:11 +0500 |
parent | 3549:395d5bb5266e |
child | 5000:58c9519dc461 |
line wrap: on
line diff
--- a/util/sasl_cyrus.lua Tue Nov 02 18:04:56 2010 +0500 +++ b/util/sasl_cyrus.lua Tue Nov 02 18:58:11 2010 +0500 @@ -121,8 +121,10 @@ -- select a mechanism to use function method:select(mechanism) - self.mechanism = mechanism; - return self:mechanisms()[mechanism]; + if not self.selected and self.mechs[mechanism] then + self.selected = mechanism; + return true; + end end -- feed new messages to process into the library @@ -131,7 +133,7 @@ local data; if not self.first_step_done then - err, data = cyrussasl.server_start(self.cyrus, self.mechanism, message or "") + err, data = cyrussasl.server_start(self.cyrus, self.selected, message or "") self.first_step_done = true; else err, data = cyrussasl.server_step(self.cyrus, message or "")