changeset 22092:e87d237df4da

auth: Fix crash on passdb lookup when all passdbs were skipped Finishes the fix in 614f5b6febaf3c825f9200ab3b62d9d047197b0e Fixes: auth: Panic: file auth-request.c: line 2493 (get_log_prefix): assertion failed: (auth_request->mech != NULL)
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Tue, 30 May 2017 11:30:10 +0300
parents 41e9e1c79db3
children 87ae222d49cf
files src/auth/auth-request.c
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/auth/auth-request.c	Tue May 30 10:01:20 2017 +0300
+++ b/src/auth/auth-request.c	Tue May 30 11:30:10 2017 +0300
@@ -1062,7 +1062,8 @@
 	request->passdb = passdb;
 
 	if (passdb == NULL) {
-		auth_request_log_error(request, AUTH_SUBSYS_MECH,
+		auth_request_log_error(request,
+			request->mech != NULL ? AUTH_SUBSYS_MECH : "none",
 			"All password databases were skipped");
 		callback(PASSDB_RESULT_INTERNAL_FAILURE, request);
 		return;
@@ -1229,7 +1230,8 @@
 	request->passdb = passdb;
 
 	if (passdb == NULL) {
-		auth_request_log_error(request, AUTH_SUBSYS_MECH,
+		auth_request_log_error(request,
+			request->mech != NULL ? AUTH_SUBSYS_MECH : "none",
 			"All password databases were skipped");
 		callback(PASSDB_RESULT_INTERNAL_FAILURE, NULL, 0, request);
 		return;