Mercurial > dovecot > core-2.2
changeset 1705:5121567de516 HEAD
bugfixes
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Fri, 22 Aug 2003 06:34:03 +0300 |
parents | 466ed9c67114 |
children | cdf53841c4af |
files | src/auth/auth-master-connection.c src/lib-auth/auth-client.c src/lib-auth/auth-server-connection.c src/login-common/main.c src/login-common/master.c |
diffstat | 5 files changed, 15 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/src/auth/auth-master-connection.c Fri Aug 22 06:14:45 2003 +0300 +++ b/src/auth/auth-master-connection.c Fri Aug 22 06:34:03 2003 +0300 @@ -144,9 +144,6 @@ master_send_reply(conn, &failure_reply, sizeof(failure_reply), request->tag); } else { - /* the auth request is finished, we don't need it anymore */ - mech_request_free(client_conn, auth_request, request->id); - master_request = i_new(struct master_userdb_request, 1); master_request->conn = conn; master_request->tag = request->tag; @@ -154,6 +151,9 @@ conn->refcount++; userdb->lookup(auth_request->user, userdb_callback, master_request); + + /* the auth request is finished, we don't need it anymore */ + mech_request_free(client_conn, auth_request, request->id); } }
--- a/src/lib-auth/auth-client.c Fri Aug 22 06:14:45 2003 +0300 +++ b/src/lib-auth/auth-client.c Fri Aug 22 06:34:03 2003 +0300 @@ -105,7 +105,9 @@ client->to_reconnect = NULL; } - client->connect_notify_callback(client, - auth_client_is_connected(client), - client->connect_notify_context); + if (client->connect_notify_callback != NULL) { + client->connect_notify_callback(client, + auth_client_is_connected(client), + client->connect_notify_context); + } }
--- a/src/lib-auth/auth-server-connection.c Fri Aug 22 06:14:45 2003 +0300 +++ b/src/lib-auth/auth-server-connection.c Fri Aug 22 06:34:03 2003 +0300 @@ -44,7 +44,8 @@ conn->client->conn_waiting_handshake_count--; update_available_auth_mechs(conn->client); - if (auth_client_is_connected(conn->client)) { + if (conn->client->connect_notify_callback != NULL && + auth_client_is_connected(conn->client)) { conn->client->connect_notify_callback(conn->client, TRUE, conn->client->connect_notify_context); } @@ -187,7 +188,7 @@ if (reconnect) auth_client_connect_missing_servers(client); - else { + else if (client->connect_notify_callback != NULL) { client->connect_notify_callback(client, auth_client_is_connected(client), client->connect_notify_context);
--- a/src/login-common/main.c Fri Aug 22 06:14:45 2003 +0300 +++ b/src/login-common/main.c Fri Aug 22 06:34:03 2003 +0300 @@ -148,7 +148,6 @@ /* Refuse to run as root - we should never need it and it's dangerous with SSL. */ restrict_access_by_env(TRUE); - sleep(5); /* make sure we can't fork() */ restrict_process_size((unsigned int)-1, 1);
--- a/src/login-common/master.c Fri Aug 22 06:14:45 2003 +0300 +++ b/src/login-common/master.c Fri Aug 22 06:34:03 2003 +0300 @@ -29,7 +29,9 @@ if (client == NULL) i_fatal("Master sent reply with unknown tag %u", reply->tag); + client->master_tag = 0; client->master_callback(client, reply->success); + client->master_callback = NULL; hash_remove(master_requests, POINTER_CAST(reply->tag)); } @@ -60,10 +62,10 @@ void master_request_abort(struct client *client) { + hash_remove(master_requests, POINTER_CAST(client->master_tag)); + client->master_tag = 0; client->master_callback = NULL; - - hash_remove(master_requests, POINTER_CAST(client->master_tag)); } void master_notify_finished(void)