dovecot: Fixed assert-crash when login fails to proxied server.

dovecot at dovecot.org dovecot at dovecot.org
Sun Jan 6 03:13:23 EET 2008


details:   http://hg.dovecot.org/dovecot/rev/05bc8679c886
changeset: 7121:05bc8679c886
user:      Timo Sirainen <tss at iki.fi>
date:      Sun Jan 06 03:11:02 2008 +0200
description:
Fixed assert-crash when login fails to proxied server.

diffstat:

1 file changed, 2 insertions(+), 4 deletions(-)
src/imap-login/client-authenticate.c |    6 ++----

diffs (37 lines):

diff -r eb71cda96663 -r 05bc8679c886 src/imap-login/client-authenticate.c
--- a/src/imap-login/client-authenticate.c	Sun Jan 06 02:19:29 2008 +0200
+++ b/src/imap-login/client-authenticate.c	Sun Jan 06 03:11:02 2008 +0200
@@ -19,8 +19,6 @@
 
 #define IMAP_SERVICE_NAME "imap"
 
-static void client_auth_failed(struct imap_client *client);
-
 const char *client_authenticate_get_capabilities(bool secured)
 {
 	const struct auth_mech_desc *mech;
@@ -84,8 +82,6 @@ static void client_auth_failed(struct im
 		io_remove(&client->io);
 	client->io = io_add(client->common.fd, IO_READ,
 			    client_input, client);
-
-	timeout_remove(&client->to_auth_waiting);
 }
 
 static bool client_handle_args(struct imap_client *client,
@@ -205,6 +201,7 @@ static void sasl_callback(struct client 
 
 	switch (reply) {
 	case SASL_SERVER_REPLY_SUCCESS:
+		timeout_remove(&client->to_auth_waiting);
 		if (args != NULL) {
 			if (client_handle_args(client, args, TRUE))
 				break;
@@ -215,6 +212,7 @@ static void sasl_callback(struct client 
 		break;
 	case SASL_SERVER_REPLY_AUTH_FAILED:
 	case SASL_SERVER_REPLY_CLIENT_ERROR:
+		timeout_remove(&client->to_auth_waiting);
 		if (args != NULL) {
 			if (client_handle_args(client, args, FALSE))
 				break;


More information about the dovecot-cvs mailing list