Intended response for LIST "" %?
Jeroen van Meeuwen (Kolab Systems)
vanmeeuwen at kolabsys.com
Wed Mar 25 10:07:36 EDT 2015
Hi there,
In working on event notifications to include the correct folder path to
shared folder mail delivery, I had accidentally broken the response to
LIST "" %. See [1] for my commit breaking it and [2] for the revert.
Naturally most of the output listed here depends on unixhierarchysep,
altnamespace, sharedprefix, userprefix ;-)
For the hierarchy stated below, the current code shows a response of:
From ctl_mboxlist -d:
> example.org!user.jane^doe
> example.org!user.john^doe
> example.org!user.john^doe.Archive
> example.org!user.john^doe.Lists.Topic
> C: . LIST "" %
> S: * LIST (\Noinferiors \HasNoChildren) "/" INBOX
> S: * LIST (\HasNoChildren) "/" Archive
> S: * LIST (\Noselect \HasChildren) "/" Lists
> S: * LIST (\Noselect \HasChildren) "/" "Other Users"
The code tests for whether a mailbox has children which obliges it to
list it in the "toplevel" hierarchy, which is very applicable to an
other users namespace, but this doesn't apply to shared folders -- each
of them may be prefixed with virtually anything other than "user":
From ctl_mboxlist -d:
> example.org!lists.kolab^org.devel
> example.org!shared.info
> example.org!shared.sales
> example.org!user.jane^doe
> example.org!user.john^doe
> example.org!user.john^doe.Archive
> example.org!user.john^doe.Lists.Topic
A regular 'LIST "" *':
> C: . LIST "" *
> S: * LIST (\Noinferiors \HasNoChildren) "/" INBOX
> S: * LIST (\HasNoChildren) "/" Archive
> S: * LIST (\HasChildren) "/" "Other Users/jane.doe"
> S: * LIST (\HasNoChildren) "/" "Shared Folders/lists/kolab.org/devel"
> S: * LIST (\HasNoChildren) "/" "Shared Folders/shared/info"
> S: * LIST (\HasNoChildren) "/" "Shared Folders/shared/sales"
> S: . OK Completed (0.000 secs 35 calls)
But 'LIST "" %' doesn't change:
> C: . LIST "" %
> S: * LIST (\Noinferiors \HasNoChildren) "/" INBOX
> S: * LIST (\HasNoChildren) "/" Archive
> S: * LIST (\Noselect \HasChildren) "/" Lists
> S: * LIST (\Noselect \HasChildren) "/" "Other Users"
The question is now whether '. LIST "" %' is supposed to also include:
> S: * LIST (\Noselect \HasChildren) "/" "Shared Folders"
Kind regards,
Jeroen van Meeuwen
[1]
https://git.cyrus.foundation/rI44e8e7f7d0e16cc6005441709fc7c02e7032d6b3
[2]
https://git.cyrus.foundation/rI10c621a954ce976e419201037666146fde1814b9
--
Systems Architect, Kolab Systems AG
e: vanmeeuwen at kolabsys.com
m: +41 79 951 9003
w: https://kolabsystems.com
pgp: 9342 BF08
More information about the Cyrus-devel
mailing list