util.sasl_cyrus: Make multi-step SASL mechanisms work correctly.
authorWaqas Hussain <waqas20@gmail.com>
Tue, 03 Aug 2010 18:20:29 +0500
changeset 3443 1159e007cc8f
parent 3442 8cfacc41099e
child 3444 e6a78e15fed2
util.sasl_cyrus: Make multi-step SASL mechanisms work correctly.
util/sasl_cyrus.lua
--- a/util/sasl_cyrus.lua	Tue Aug 03 18:19:45 2010 +0500
+++ b/util/sasl_cyrus.lua	Tue Aug 03 18:20:29 2010 +0500
@@ -133,8 +133,9 @@
 	local err;
 	local data;
 
-	if self.mechanism then
+	if not self.first_step_done then
 		err, data = cyrussasl.server_start(self.cyrus, self.mechanism, message or "")
+		self.first_step_done = true;
 	else
 		err, data = cyrussasl.server_step(self.cyrus, message or "")
 	end