[dovecot-cvs] dovecot/src/imap-login client-authenticate.c, 1.47, 1.48
tss at dovecot.org
tss at dovecot.org
Fri Feb 16 13:42:05 UTC 2007
Update of /var/lib/cvs/dovecot/src/imap-login
In directory talvi:/tmp/cvs-serv6491/imap-login
Modified Files:
client-authenticate.c
Log Message:
If authentication fails and we've already destroyed the client, don't go
io_add()ing the client anywhere.
Index: client-authenticate.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/imap-login/client-authenticate.c,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -d -r1.47 -r1.48
--- client-authenticate.c 20 Dec 2006 04:52:28 -0000 1.47
+++ client-authenticate.c 16 Feb 2007 13:42:03 -0000 1.48
@@ -168,10 +168,13 @@
i_assert(nologin);
- /* 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) {
+ /* 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);
+ }
return TRUE;
}
@@ -209,11 +212,13 @@
NULL);
client_send_tagline(client, msg);
- /* 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) {
+ /* 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);
+ }
break;
case SASL_SERVER_REPLY_MASTER_FAILED:
client_destroy_internal_failure(client);
More information about the dovecot-cvs
mailing list