[dovecot-cvs] dovecot/src/login-common client-common.h, 1.10, 1.11 sasl-server.c, 1.11, 1.12

tss at dovecot.org tss at dovecot.org
Tue Nov 7 15:06:30 UTC 2006


Update of /var/lib/cvs/dovecot/src/login-common
In directory talvi:/tmp/cvs-serv19167/login-common

Modified Files:
	client-common.h sasl-server.c 
Log Message:
Crashfixes and more asserts. Mostly related to use of AUTHENTICATE/AUTH
commands.



Index: client-common.h
===================================================================
RCS file: /var/lib/cvs/dovecot/src/login-common/client-common.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- client-common.h	10 Aug 2006 21:14:57 -0000	1.10
+++ client-common.h	7 Nov 2006 15:06:26 -0000	1.11
@@ -23,6 +23,7 @@
 	unsigned int tls:1;
 	unsigned int secured:1;
 	unsigned int authenticating:1;
+	unsigned int waiting_auth_reply:1;
 	/* ... */
 };
 

Index: sasl-server.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/login-common/sasl-server.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- sasl-server.c	5 Jun 2006 20:25:39 -0000	1.11
+++ sasl-server.c	7 Nov 2006 15:06:26 -0000	1.12
@@ -37,6 +37,7 @@
 	unsigned int i;
 	bool nologin;
 
+	i_assert(client->auth_request == request);
 	if (!client->authenticating) {
 		/* client aborted */
 		i_assert(status < 0);
@@ -46,14 +47,7 @@
 	switch (status) {
 	case 0:
 		/* continue */
-		if (client->auth_request != NULL) {
-			i_assert(client->auth_request == request);
-		} else {
-			i_assert(client->auth_request == NULL);
-
-			client->auth_request = request;
-		}
-
+		client->waiting_auth_reply = FALSE;
 		client->sasl_callback(client, SASL_SERVER_REPLY_CONTINUE,
 				      data_base64, NULL);
 		break;



More information about the dovecot-cvs mailing list