Opened 8 years ago

Closed 7 years ago

#1328032 closed Feature Patches (fixed)

imap folder list bug

Reported by: nobody Owned by: nobody
Priority: 5 Milestone: 0.1-beta2
Component: Other Version: None
Severity: critical Keywords:
Cc:

Description

I found that after installing roundcube mail it would
not list the folders in my user accounts. After
examining the session logs from imap4d I found this
little gem:

Oct 16 08:38:47 devastation gnu-imap4d[1615]: recv: lsb
LSUB "" "*"
Oct 16 08:38:47 devastation gnu-imap4d[1615]: sent: *
LIST () "/" INBOX^M
Oct 16 08:38:47 devastation gnu-imap4d[1615]: sent: *
LIST () "/" Sent^M
Oct 16 08:38:47 devastation gnu-imap4d[1615]: sent: *
LIST () "/" Trash^M
Oct 16 08:38:47 devastation gnu-imap4d[1615]: sent: lsb
OK LSUB Completed^M
Oct 16 08:38:47 devastation gnu-imap4d[1615]: recv: c
CREATE "INBOX"
Oct 16 08:38:47 devastation gnu-imap4d[1615]: sent: c
BAD CREATE Already exist^M

after examining the code that makes this call (in
program/include/rcube_imap.inc it calls
iil_C_ListSubscribed from program/lib/imap.inc. In that
function I found the line:

                if (($line[0]=="*") && ($a[1]=="LSUB")){

Note in the response sent from the imap server the line
starts with "* LIST". This check is looking for "*
LSUB" which obviously doesn't match. The function
returns no folders, and function _list_mailboxes in
rcube_imap.inc correctly thinks no mailboxes exists and
tries to create INBOX, which the imap server rejects
because it does, in fact, exist.

Here's hoping it doesn't break anything else =)

Change History (2)

comment:1 Changed 7 years ago by richs

If the server is responding with "* LIST" to an LSUB command, isn't that a bug in gnu-imap4d?

comment:2 Changed 7 years ago by thomasb

  • Resolution changed from None to fixed
  • Status changed from assigned to closed

Patch applied in Trunk

Note: See TracTickets for help on using tickets.