changeset 20737:eb00bf4af260

auth: Make sure auth_request_log_info() doesn't crash when there are no passdbs auth_request_is_disabled_master_user() could have caused such crash.
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Fri, 09 Sep 2016 18:18:32 +0300
parents 9734b271baba
children cbe6312ff0e9
files src/auth/auth-request.c
diffstat 1 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/auth/auth-request.c	Fri Sep 09 18:12:41 2016 +0300
+++ b/src/auth/auth-request.c	Fri Sep 09 18:18:32 2016 +0300
@@ -2406,9 +2406,14 @@
 	if (auth_request->set->debug) {
 		/* auth_debug=yes overrides auth_verbose settings */
 	} else {
-		const char *db_auth_verbose = auth_request->userdb_lookup ?
-			auth_request->userdb->set->auth_verbose :
-			auth_request->passdb->set->auth_verbose;
+		const char *db_auth_verbose;
+
+		if (auth_request->userdb_lookup)
+			db_auth_verbose = auth_request->userdb->set->auth_verbose;
+		else if (auth_request->passdb != NULL)
+			db_auth_verbose = auth_request->passdb->set->auth_verbose;
+		else
+			db_auth_verbose = "d";
 		switch (db_auth_verbose[0]) {
 		case 'y':
 			break;