dovecot: Assert-crashfix

dovecot at dovecot.org dovecot at dovecot.org
Sun Jan 6 01:38:55 EET 2008


details:   http://hg.dovecot.org/dovecot/rev/fc06e748f8e4
changeset: 7115:fc06e748f8e4
user:      Timo Sirainen <tss at iki.fi>
date:      Sun Jan 06 01:38:52 2008 +0200
description:
Assert-crashfix

diffstat:

1 file changed, 13 insertions(+), 18 deletions(-)
src/imap-login/client-authenticate.c |   31 +++++++++++++------------------

diffs (55 lines):

diff -r 9bbe74f6f2a9 -r fc06e748f8e4 src/imap-login/client-authenticate.c
--- a/src/imap-login/client-authenticate.c	Sun Jan 06 01:34:51 2008 +0200
+++ b/src/imap-login/client-authenticate.c	Sun Jan 06 01:38:52 2008 +0200
@@ -75,6 +75,17 @@ static void client_auth_input(struct ima
 		/* clear sensitive data */
 		safe_memset(line, 0, strlen(line));
 	}
+}
+
+static void client_auth_failed(struct imap_client *client)
+{
+	/* get back to normal client input. */
+	if (client->io != NULL)
+		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,
@@ -169,13 +180,8 @@ static bool client_handle_args(struct im
 
 	i_assert(nologin);
 
-	if (!client->destroyed) {
-		/* get back to normal client input. */
-		if (client->io != NULL)
-			io_remove(&client->io);
-		client->io = io_add(client->common.fd, IO_READ,
-				    client_input, client);
-	}
+	if (!client->destroyed)
+		client_auth_failed(client);
 	return TRUE;
 }
 
@@ -264,17 +270,6 @@ static int client_auth_begin(struct imap
 	return 0;
 }
 
-static void client_auth_failed(struct imap_client *client)
-{
-	/* get back to normal client input. */
-	if (client->io != NULL)
-		io_remove(&client->io);
-	client->io = io_add(client->common.fd, IO_READ,
-			    client_input, client);
-
-	timeout_remove(&client->to_auth_waiting);
-}
-
 int cmd_authenticate(struct imap_client *client, const struct imap_arg *args)
 {
 	const char *mech_name, *init_resp = NULL;


More information about the dovecot-cvs mailing list