Mercurial > dovecot > core-2.2
changeset 19718:8ad9d8dd0f70
acl: If acl_user is set, use it for ACL username checks. Overrides master_user.
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Mon, 08 Feb 2016 12:04:02 +0200 |
parents | d5d64a90df39 |
children | f41c7db50a90 |
files | src/plugins/acl/acl-mailbox-list.c src/plugins/acl/acl-plugin.h src/plugins/acl/acl-storage.c |
diffstat | 3 files changed, 5 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/plugins/acl/acl-mailbox-list.c Fri Feb 05 15:55:36 2016 +0200 +++ b/src/plugins/acl/acl-mailbox-list.c Mon Feb 08 12:04:02 2016 +0200 @@ -509,7 +509,7 @@ return; owner_username = ns->user->username; - current_username = auser->master_user; + current_username = auser->acl_user; if (current_username == NULL) current_username = owner_username; else
--- a/src/plugins/acl/acl-plugin.h Fri Feb 05 15:55:36 2016 +0200 +++ b/src/plugins/acl/acl-plugin.h Mon Feb 08 12:04:02 2016 +0200 @@ -16,7 +16,7 @@ struct acl_user { union mail_user_module_context module_ctx; - const char *master_user; + const char *acl_user; const char *acl_env; const char *const *groups;
--- a/src/plugins/acl/acl-storage.c Fri Feb 05 15:55:36 2016 +0200 +++ b/src/plugins/acl/acl-storage.c Mon Feb 08 12:04:02 2016 +0200 @@ -35,7 +35,9 @@ auser->acl_lookup_dict = acl_lookup_dict_init(user); auser->acl_env = env; - auser->master_user = mail_user_plugin_getenv(user, "master_user"); + auser->acl_user = mail_user_plugin_getenv(user, "acl_user"); + if (auser->acl_user == NULL) + auser->acl_user = mail_user_plugin_getenv(user, "master_user"); env = mail_user_plugin_getenv(user, "acl_groups"); if (env != NULL) {