[Dovecot] Namespace subscription issue

Brad Davidson
Tue, 26 Oct 2010 19:05:12 -0000

I'm a little confused about how public namespaces work with
subscriptions. If I set subscriptions=no and subscribe to the folders,
the subscription entries go into the user's private subscription file
and that's fine. However, I am unable to pull their status with the
LIST-EXTENDED extension.

Normal listing works OK:
A0004 LIST "" "*" RETURN (STATUS (MESSAGES UNSEEN))
* LIST (\NonExistent) "/" "Public"
* LIST () "/" "Public/Public One"
* STATUS "Public/Public One" (MESSAGES 0 UNSEEN 0)
* LIST () "/" "Public/Public One/Sub 1"
* STATUS "Public/Public One/Sub 1" (MESSAGES 0 UNSEEN 0)
* LIST () "/" "Public/Public One/Sub 2"
* STATUS "Public/Public One/Sub 2" (MESSAGES 0 UNSEEN 0)
* LIST () "/" "Public/Public Two"
* STATUS "Public/Public Two" (MESSAGES 0 UNSEEN 0)
* LIST () "/" "Public/Read-only"
* STATUS "Public/Read-only" (MESSAGES 1 UNSEEN 0)
A0004 OK List completed.

Listing SUBSCRIBED (or LSUB) fails:
A0003 LIST (SUBSCRIBED) "" "*" RETURN (STATUS (MESSAGES
UNSEEN))
* LIST (\Subscribed) "/" "Public/Public One"
* NO Mailbox doesn't exist: Public.Public One
* LIST (\Subscribed) "/" "Public/Public One/Sub 1"
* NO Mailbox doesn't exist: Public.Public One.Sub 1
* LIST (\Subscribed) "/" "Public/Public One/Sub 2"
* NO Mailbox doesn't exist: Public.Public One.Sub 2
* LIST (\Subscribed) "/" "Public/Public Two"
* NO Mailbox doesn't exist: Public.Public Two
* LIST (\Subscribed) "/" "Public/Read-only"
* NO Mailbox doesn't exist: Public.Read-only
A0003 OK List completed.

If I set subscriptions=yes it works OK, but then the subscriptions are
shared unless I override SUBSCRIPTIONS in the mail location. Is this
working as designed? Here's what I ended up doing - is there a better
way?

namespace {
  inbox = yes
  location   prefix   separator = /
  type = private
}
namespace {
  hidden = yes
  list = no
  location = maildir:%h/Maildir
  prefix = ~/mail/
  separator = /
  type = private
}
namespace {
  type = public
  separator = /
  prefix = Public/
  location
maildir:/var/mail/public:INDEX=~/Maildir/public:SUBSCRIPTIONS=~/Maildir/
public/subscriptions
  subscriptions = yes
}

---
Brandon 'Brad' Davidson
Virtualization Systems Administrator
University of Oregon Information Services
(541) 346-8098 brandond at uoregon.edu