dovecot-2.2: auth: If auth_verbose_passwords is set, log the pas...

dovecot at dovecot.org dovecot at dovecot.org
Sun Sep 22 02:44:50 EEST 2013


details:   http://hg.dovecot.org/dovecot-2.2/rev/1f9294fbb118
changeset: 16808:1f9294fbb118
user:      Timo Sirainen <tss at iki.fi>
date:      Sun Sep 22 02:44:21 2013 +0300
description:
auth: If auth_verbose_passwords is set, log the password also for unknown users.

diffstat:

 src/auth/auth-request.c |  54 ++++++++++++++++++++++++++++++++----------------
 1 files changed, 36 insertions(+), 18 deletions(-)

diffs (82 lines):

diff -r 4ce8f47d20af -r 1f9294fbb118 src/auth/auth-request.c
--- a/src/auth/auth-request.c	Sun Sep 22 02:32:05 2013 +0300
+++ b/src/auth/auth-request.c	Sun Sep 22 02:44:21 2013 +0300
@@ -1782,21 +1782,11 @@
 	auth_request_log_debug(request, subsystem, "%s", str_c(str));
 }
 
-void auth_request_log_password_mismatch(struct auth_request *request,
-					const char *subsystem)
+static void
+auth_request_append_password(struct auth_request *request, string_t *str)
 {
-	string_t *str;
 	const char *log_type = request->set->verbose_passwords;
 
-	if (strcmp(log_type, "no") == 0) {
-		auth_request_log_info(request, subsystem, "Password mismatch");
-		return;
-	}
-
-	str = t_str_new(128);
-	get_log_prefix(str, request, subsystem);
-	str_append(str, "Password mismatch ");
-
 	if (strcmp(log_type, "plain") == 0) {
 		str_printfa(str, "(given password: %s)",
 			    request->mech_password);
@@ -1810,7 +1800,41 @@
 	} else {
 		i_unreached();
 	}
+}
 
+void auth_request_log_password_mismatch(struct auth_request *request,
+					const char *subsystem)
+{
+	string_t *str;
+
+	if (strcmp(request->set->verbose_passwords, "no") == 0) {
+		auth_request_log_info(request, subsystem, "Password mismatch");
+		return;
+	}
+
+	str = t_str_new(128);
+	get_log_prefix(str, request, subsystem);
+	str_append(str, "Password mismatch ");
+
+	auth_request_append_password(request, str);
+	i_info("%s", str_c(str));
+}
+
+void auth_request_log_unknown_user(struct auth_request *request,
+				   const char *subsystem)
+{
+	string_t *str;
+
+	if (strcmp(request->set->verbose_passwords, "no") == 0 ||
+	    !request->set->verbose) {
+		auth_request_log_info(request, subsystem, "unknown user");
+		return;
+	}
+	str = t_str_new(128);
+	get_log_prefix(str, request, subsystem);
+	str_append(str, "unknown user ");
+
+	auth_request_append_password(request, str);
 	i_info("%s", str_c(str));
 }
 
@@ -2114,12 +2138,6 @@
 	va_end(va);
 }
 
-void auth_request_log_unknown_user(struct auth_request *auth_request,
-				   const char *subsystem)
-{
-	auth_request_log_info(auth_request, subsystem, "unknown user");
-}
-
 void auth_request_refresh_last_access(struct auth_request *request)
 {
 	request->last_access = ioloop_time;


More information about the dovecot-cvs mailing list