]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imap/pop3 proxy: Master user logins were broken by lib-sasl change.
authorTimo Sirainen <tss@iki.fi>
Tue, 18 Jun 2013 08:59:21 +0000 (11:59 +0300)
committerTimo Sirainen <tss@iki.fi>
Tue, 18 Jun 2013 08:59:21 +0000 (11:59 +0300)
src/imap-login/imap-proxy.c
src/pop3-login/pop3-proxy.c

index e7faebc5dbf13bf5a86e9db2e7d4fcd0ba7f01f5..ba254de6b12d81d00bf8a0bcfa08c5f477f8967a 100644 (file)
@@ -79,8 +79,9 @@ static int proxy_write_login(struct imap_client *client, string_t *str)
 
        i_assert(client->common.proxy_sasl_client == NULL);
        memset(&sasl_set, 0, sizeof(sasl_set));
-       sasl_set.authid = client->common.proxy_user;
-       sasl_set.authzid = client->common.proxy_master_user;
+       sasl_set.authid = client->common.proxy_master_user != NULL ?
+               client->common.proxy_master_user : client->common.proxy_user;
+       sasl_set.authzid = client->common.proxy_user;
        sasl_set.password = client->common.proxy_password;
        client->common.proxy_sasl_client =
                sasl_client_new(client->common.proxy_mech, &sasl_set);
index b2daa4719dd9ab876758232ed592ca279475cbe3..beb8f2e2bda77f797f1a1ac42d34daa89af3e2c9 100644 (file)
@@ -55,8 +55,9 @@ static int proxy_send_login(struct pop3_client *client, struct ostream *output)
 
        i_assert(client->common.proxy_sasl_client == NULL);
        memset(&sasl_set, 0, sizeof(sasl_set));
-       sasl_set.authid = client->common.proxy_user;
-       sasl_set.authzid = client->common.proxy_master_user;
+       sasl_set.authid = client->common.proxy_master_user != NULL ?
+               client->common.proxy_master_user : client->common.proxy_user;
+       sasl_set.authzid = client->common.proxy_user;
        sasl_set.password = client->common.proxy_password;
        client->common.proxy_sasl_client =
                sasl_client_new(client->common.proxy_mech, &sasl_set);