dovecot-2.2: auth: EXTERNAL mechanism didn't use auth_username_*...

dovecot at dovecot.org dovecot at dovecot.org
Mon Jul 30 19:49:55 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.2/rev/1e7c33ce9c16
changeset: 14735:1e7c33ce9c16
user:      Timo Sirainen <tss at iki.fi>
date:      Mon Jul 30 19:49:43 2012 +0300
description:
auth: EXTERNAL mechanism didn't use auth_username_* settings.

diffstat:

 src/auth/mech-external.c |  16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 deletions(-)

diffs (26 lines):

diff -r dfe6f9a790bc -r 1e7c33ce9c16 src/auth/mech-external.c
--- a/src/auth/mech-external.c	Mon Jul 30 15:56:00 2012 +0300
+++ b/src/auth/mech-external.c	Mon Jul 30 19:49:43 2012 +0300
@@ -16,8 +16,20 @@
 		auth_request_log_info(request, "external",
 				      "username not known");
 		auth_request_fail(request);
-        } else if (*authzid != '\0' &&
-		   !auth_request_set_login_username(request, authzid, &error)) {
+		return;
+	}
+
+	/* this call is done simply to put the username through translation
+	   settings */
+	if (!auth_request_set_username(request, "", &error)) {
+		auth_request_log_info(request, "external",
+				      "Invalid username");
+		auth_request_fail(request);
+		return;
+	}
+
+	if (*authzid != '\0' &&
+	    !auth_request_set_login_username(request, authzid, &error)) {
 		/* invalid login username */
 		auth_request_log_info(request, "plain",
 				      "login user: %s", error);


More information about the dovecot-cvs mailing list