Mercurial > dovecot > original-hg > dovecot-1.2
changeset 8345:28867a0ee182 HEAD
Don't assume original_username is always set.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 26 Oct 2008 15:52:47 +0200 |
parents | 938700823522 |
children | 9f66028a1089 |
files | src/auth/passdb.c |
diffstat | 1 files changed, 4 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/auth/passdb.c Sun Oct 26 15:52:07 2008 +0200 +++ b/src/auth/passdb.c Sun Oct 26 15:52:47 2008 +0200 @@ -52,7 +52,7 @@ const unsigned char **credentials_r, size_t *size_r) { const char *wanted_scheme = auth_request->credentials_scheme; - const char *plaintext; + const char *plaintext, *username; int ret; ret = password_decode(input, input_scheme, credentials_r, size_r); @@ -92,8 +92,9 @@ /* we can generate anything out of plaintext passwords */ plaintext = t_strndup(*credentials_r, *size_r); - if (!password_generate(plaintext, - auth_request->original_username, + username = auth_request->original_username != NULL ? + auth_request->original_username : auth_request->user; + if (!password_generate(plaintext, username, wanted_scheme, credentials_r, size_r)) { auth_request_log_error(auth_request, "password", "Requested unknown scheme %s", wanted_scheme);