dovecot-2.0: auth: Deinit auth request handler before pass/userdbs

dovecot at dovecot.org dovecot at dovecot.org
Fri Jun 4 18:15:33 EEST 2010


details:   http://hg.dovecot.org/dovecot-2.0/rev/b578861bfa40
changeset: 11473:b578861bfa40
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Jun 04 16:15:28 2010 +0100
description:
auth: Deinit auth request handler before pass/userdbs

diffstat:

 src/auth/main.c |  7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diffs (18 lines):

diff -r e575fd47c3a5 -r b578861bfa40 src/auth/main.c
--- a/src/auth/main.c	Fri Jun 04 15:51:47 2010 +0100
+++ b/src/auth/main.c	Fri Jun 04 16:15:28 2010 +0100
@@ -160,8 +160,13 @@
 	auth_master_connections_deinit();
         auth_worker_server_deinit();
 
+	auth_request_handler_deinit();
+	/* there may still be some async auth requests left, but above
+	   functions should have marked all of them as destroyed. pass/userdb
+	   deinits should abort the pending requests, which still triggers
+	   callbacks, which should avoid crashes by checking the destroyed
+	   state. */
 	auths_deinit();
-	auth_request_handler_deinit();
 	passdb_cache_deinit();
 
 	mech_register_deinit(&mech_reg);


More information about the dovecot-cvs mailing list