dovecot-2.1: doveadm mailbox list without pattern shows now all ...
dovecot at dovecot.org
dovecot at dovecot.org
Thu Feb 9 03:57:05 EET 2012
details: http://hg.dovecot.org/dovecot-2.1/rev/b600af017598
changeset: 14090:b600af017598
user: Timo Sirainen <tss at iki.fi>
date: Thu Feb 09 03:56:50 2012 +0200
description:
doveadm mailbox list without pattern shows now all shared and public mailboxes also.
doveadm mailbox list '*' shows only the one matching namespace.
diffstat:
src/doveadm/doveadm-mail-list-iter.c | 26 ++++++++++++++++++++------
1 files changed, 20 insertions(+), 6 deletions(-)
diffs (53 lines):
diff -r 6881d8c59d9f -r b600af017598 src/doveadm/doveadm-mail-list-iter.c
--- a/src/doveadm/doveadm-mail-list-iter.c Thu Feb 09 03:44:09 2012 +0200
+++ b/src/doveadm/doveadm-mail-list-iter.c Thu Feb 09 03:56:50 2012 +0200
@@ -55,15 +55,15 @@
return 1;
}
-struct doveadm_mail_list_iter *
-doveadm_mail_list_iter_init(struct mail_user *user,
- struct mail_search_args *search_args,
- enum mailbox_list_iter_flags iter_flags)
+static struct doveadm_mail_list_iter *
+doveadm_mail_list_iter_init_nsmask(struct mail_user *user,
+ struct mail_search_args *search_args,
+ enum mailbox_list_iter_flags iter_flags,
+ enum namespace_type ns_mask)
{
static const char *all_pattern = "*";
struct doveadm_mail_list_iter *iter;
ARRAY_TYPE(const_string) patterns;
- enum namespace_type ns_mask = NAMESPACE_PRIVATE;
bool have_guid = FALSE;
iter = i_new(struct doveadm_mail_list_iter, 1);
@@ -92,13 +92,27 @@
}
struct doveadm_mail_list_iter *
+doveadm_mail_list_iter_init(struct mail_user *user,
+ struct mail_search_args *search_args,
+ enum mailbox_list_iter_flags iter_flags)
+{
+ enum namespace_type ns_mask = NAMESPACE_PRIVATE;
+
+ return doveadm_mail_list_iter_init_nsmask(user, search_args,
+ iter_flags, ns_mask);
+}
+
+struct doveadm_mail_list_iter *
doveadm_mail_list_iter_full_init(struct mail_user *user,
struct mail_search_args *search_args,
enum mailbox_list_iter_flags iter_flags)
{
+ enum namespace_type ns_mask =
+ NAMESPACE_PRIVATE | NAMESPACE_SHARED | NAMESPACE_PUBLIC;
struct doveadm_mail_list_iter *iter;
- iter = doveadm_mail_list_iter_init(user, search_args, iter_flags);
+ iter = doveadm_mail_list_iter_init_nsmask(user, search_args,
+ iter_flags, ns_mask);
iter->only_selectable = FALSE;
return iter;
}
More information about the dovecot-cvs
mailing list