Intended response for LIST "" %?

Alexey Melnikov alexey.melnikov at isode.com
Wed Mar 25 14:58:47 EDT 2015


On 25/03/2015 14:07, Jeroen van Meeuwen (Kolab Systems) wrote:
> 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"
Yes.



More information about the Cyrus-devel mailing list