Opened 3 years ago

Closed 18 months ago

Last modified 18 months ago

#1486796 closed Feature Requests (fixed)

IMAP namespace command not honored by RC

Reported by: ive Owned by:
Priority: 5 Milestone: 0.7-beta
Component: IMAP connection Version: 0.4-beta
Severity: normal Keywords:
Cc: p.heinlein+roundcubetrac@…

Description (last modified by alec)

Roundcube doesn't discover mailboxes under namespaces. Server dovecot-1.2.11 has:

namespace private {
    prefix = Company/
    separator = /
    location = virtual:/var/mail/virtual:INDEX=MEMORY:LAYOUT=maildir++
    subscriptions = no
    hidden = no
    list = no
}

But under "settings->Folders management" there is no Company/* mailboxes. I have attaches imap_debug.log(wrond RC) and direct(correct) imap session logs.

Attachments (3)

imap_debug.log (33.0 KB) - added by ive 3 years ago.
Roundcube imap session log
imap_ok.log (1.5 KB) - added by ive 3 years ago.
Example of correct imap namespace discovery
imap_namespace.patch (3.1 KB) - added by alec 18 months ago.
Proposed solution

Download all attachments as: .zip

Change History (13)

Changed 3 years ago by ive

Roundcube imap session log

Changed 3 years ago by ive

Example of correct imap namespace discovery

comment:1 Changed 3 years ago by alec

  • Description modified (diff)

comment:2 Changed 3 years ago by pheinlein

  • Cc p.heinlein+roundcubetrac@… added

comment:3 Changed 2 years ago by alec

  • Milestone changed from later to 0.5-stable

ROundcube uses NAMESPACE command (at least in 0.5), but doesn't show folders that are not listed in LSUB/LIST "" "*" result. Why did you set list=no and is this working with other clients?

comment:4 Changed 2 years ago by sezuan

There was an interesting discussion about that on the imap protocol mailinglist:

http://mailman2.u.washington.edu/pipermail/imap-protocol/2010-May/001076.html

LIST "" "*" should list the default namespace, nothing else, so list = no is the standard behaviour.

Other client can list mailboxes under list=no namespaces.

I usually set on imap servers the default namespace to "" and set all additional namespace to hidden=no/list=yes. This works with most clients and supports clients with no or broken namespace support, too.

comment:5 Changed 2 years ago by thomasb

  • Component changed from Core functionality to IMAP connection
  • Milestone changed from 0.5-stable to 0.6-beta
  • Type changed from Bugs to Feature Requests

Roundcubes behavior is not wrong so this is not a bug but a feature request to explicitly request list for all namespaces.

Changed 18 months ago by alec

Proposed solution

comment:6 Changed 18 months ago by alec

Please, test with attached patch for program/include/rcube_imap.php file.

comment:7 Changed 18 months ago by pheinlein

It's working! Great -- thanks.

comment:8 Changed 18 months ago by alec

  • Resolution set to fixed
  • Status changed from new to closed

Applied in [89dcf540].

comment:9 Changed 18 months ago by ekrieger

Please check out the Commit [89dcf540]. Is the assign for name intended:

3171	        if ($root == '' && $name = '*') { 

comment:10 Changed 18 months ago by alec

No it isn't. Thx. Fixed in r5431/svn.

Note: See TracTickets for help on using tickets.