Mercurial > dovecot > core-2.2
changeset 12196:9939f0565916
login: If master login fails, tell auth process to free the auth request.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Tue, 28 Sep 2010 17:41:43 +0100 |
parents | cf1e5238f747 |
children | 002a702cf06a |
files | src/login-common/client-common.h src/login-common/sasl-server.c |
diffstat | 2 files changed, 4 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/login-common/client-common.h Tue Sep 28 17:15:52 2010 +0100 +++ b/src/login-common/client-common.h Tue Sep 28 17:41:43 2010 +0100 @@ -101,6 +101,7 @@ struct auth_client_request *auth_request; string_t *auth_response; + unsigned int master_auth_id; unsigned int master_tag; sasl_server_callback_t *sasl_callback;
--- a/src/login-common/sasl-server.c Tue Sep 28 17:15:52 2010 +0100 +++ b/src/login-common/sasl-server.c Tue Sep 28 17:41:43 2010 +0100 @@ -104,6 +104,8 @@ break; } client->mail_pid = reply->mail_pid; + } else { + auth_client_send_cancel(auth_client, client->master_auth_id); } call_client_callback(client, sasl_reply, data, NULL); } @@ -135,6 +137,7 @@ buffer_append(buf, data, size); req.data_size = buf->used; + client->master_auth_id = req.auth_id; master_auth_request(master_auth, client->fd, &req, buf->data, master_auth_callback, client, &client->master_tag); }