dovecot: Do username checks and translations with userdb lookups.
dovecot at dovecot.org
dovecot at dovecot.org
Tue Aug 7 13:56:36 EEST 2007
details: http://hg.dovecot.org/dovecot/rev/c14b923977e5
changeset: 6220:c14b923977e5
user: Timo Sirainen <tss at iki.fi>
date: Tue Aug 07 13:56:33 2007 +0300
description:
Do username checks and translations with userdb lookups.
diffstat:
1 file changed, 7 insertions(+), 2 deletions(-)
src/auth/auth-master-connection.c | 9 +++++++--
diffs (27 lines):
diff -r 22060906360e -r c14b923977e5 src/auth/auth-master-connection.c
--- a/src/auth/auth-master-connection.c Tue Aug 07 13:49:51 2007 +0300
+++ b/src/auth/auth-master-connection.c Tue Aug 07 13:56:33 2007 +0300
@@ -113,7 +113,7 @@ master_input_user(struct auth_master_con
master_input_user(struct auth_master_connection *conn, const char *args)
{
struct auth_request *auth_request;
- const char *const *list, *name, *arg;
+ const char *const *list, *name, *arg, *error;
/* <id> <userid> [<parameters>] */
list = t_strsplit(args, "\t");
@@ -124,8 +124,13 @@ master_input_user(struct auth_master_con
auth_request = auth_request_new_dummy(conn->listener->auth);
auth_request->id = (unsigned int)strtoul(list[0], NULL, 10);
- auth_request->user = p_strdup(auth_request->pool, list[1]);
auth_request->context = conn;
+
+ if (!auth_request_set_username(auth_request, list[1], &error)) {
+ auth_request_log_info(auth_request, "userdb", "%s", error);
+ user_callback(USERDB_RESULT_USER_UNKNOWN, auth_request);
+ return TRUE;
+ }
for (list += 2; *list != NULL; list++) {
arg = strchr(*list, '=');
More information about the dovecot-cvs
mailing list