The following issue has been RESOLVED.
======================================================================
http://www.dbmail.org/mantis/view.php?id=379
======================================================================
Reported By: dustmite
Assigned To: aaron
======================================================================
Project: DBMail
Issue ID: 379
Category: IMAP daemon
Reproducibility: always
Severity: minor
Priority: normal
Status: resolved
target:
Resolution: fixed
Fixed in Version: 2.1.8
======================================================================
Date Submitted: 19-Jul-06 09:40 CEST
Last Modified: 03-Sep-06 13:30 CEST
======================================================================
Summary: RoundCube Webmail Client (IMAP) Unable to Retrieve
Message Body
Description:
RoundCube appears to receive incorrect message ids/numbers, it is able
however to receive the mbox listings and can retrieve details relating to
each mbox, including the mail list, however, when it attempts to retrieve
a message body it uses the wrong message number. The result of this is an
error from dbmail-lmapd of "invalid message range specified"
I am unable to work this out, I don't think it's a fault, per se, with
RoundCube since the bug is not apparent under 2.0 branch of Dbmail. I'll
try and post details to the RoundCube bug tracker so that the exact cause
can be identified... hopefully.
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: COMMAND: [ftch FETCH 10
(BODY.PEEK[TEXT])]
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: arg[0]: '10'
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: arg[1]: '('
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: arg[2]: 'BODY.PEEK'
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: arg[3]: '['
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: arg[4]: 'TEXT'
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: arg[5]: ']'
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: arg[6]: ')'
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: imap4.c,IMAPClientHandler:
Executing command fetch...
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: db.c,db_acl_has_right:
checking ACL [read_flag] for user [4] on mailbox [7]
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: db.c, db_acl_has_right:
mailbox [7] is owned by user [4], is that also [4]?
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: db.c, db_acl_has_right:
mailbox [7] is owned by user [4], giving all rights
Jul 18 12:37:38 localhost dbmail/imap4d[3366]:
dbmail-imapsession.c,dbmail_imap_session_fetch_parse_args: parse args[2] =
[BODY.PEEK]
Jul 18 12:37:38 localhost dbmail/imap4d[3366]:
dbmail-imapsession.c,_imap_session_fetch_parse_partspec: token [TEXT],
nexttoken []]
Jul 18 12:37:38 localhost dbmail/imap4d[3366]:
dbmail-imapsession.c,_imap_session_fetch_parse_octet_range: parse token
[)]
Jul 18 12:37:38 localhost dbmail/imap4d[3366]:
dbmail-imapsession.c,dbmail_imap_session_fetch_parse_args: parse args[6] =
[)]
Jul 18 12:37:38 localhost dbmail/imap4d[3366]: RESPONSE: [ftch BAD invalid
message range specified ]
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
related to 0000387 IMAP SERACH command does not return val...
related to 0000394 Using roundcube against a dbmail imap s...
======================================================================
----------------------------------------------------------------------
paul - 19-Jul-06 11:37
----------------------------------------------------------------------
dustmite,
plz include more loglines leading upto the one you're already including.
I'm especially interested in COMMAND and RESPONSE lines.
btw, roundcube looks really nice/spiffy/web2.0
but tags used in the imap commands look *really* suspicious. They break
rfc3501.
from 3501:
...
The client command begins an operation. Each client command is
prefixed with an identifier (typically a short alphanumeric string,
e.g., A0001, A0002, etc.) called a "tag". A different tag is
generated by the client for each command.
...
And this roundcube doesn't do. It will happily use the same tag (sl01) for
subsequent SELECT commands on different mailboxes. That's not good.
I've tested this on roundcube/trunk.
----------------------------------------------------------------------
dustmite - 19-Jul-06 12:36
----------------------------------------------------------------------
I'm including all of the loglines for, what appears to be, a whole session
with roundcube.
I certainly agree regarding the issues that roundcube has, particularly
the tags.
I'm gradually working through it in an attempt to fix a few things. I like
it's look but I'm struggling with the quality of portions of it's backend -
the IMAP lib that's being used was taken from another webmail client and
feels really hideous and bloated.
Anyway, I shall attach the loglines to this bug report.
----------------------------------------------------------------------
paul - 19-Jul-06 14:15
----------------------------------------------------------------------
looks like we may indeed have a bug in the search code.
the result from
TAG SEARCH UID uidnumber
looks odd.
will fix.
----------------------------------------------------------------------
paul - 20-Jul-06 10:48
----------------------------------------------------------------------
I've fixed the problem with search in svn-trunk. Could you plz test this?
----------------------------------------------------------------------
aaron - 08-Aug-06 20:06
----------------------------------------------------------------------
Hi, have you had a chance to see if this bug is still open?
----------------------------------------------------------------------
aaron - 23-Aug-06 06:23
----------------------------------------------------------------------
The remaining issue with this bug appears to be that RoundCube fails to
specify UID as part of its FETCH command, so when it gives a message uid
but dbmail is expecting a message sequence number, nothing works. I've
reported the issue to the RoundCube maintainer, so I'm closing our side of
the bug.
----------------------------------------------------------------------
paul - 23-Aug-06 22:36
----------------------------------------------------------------------
I'm reopening this bug because it's needs fixing.
Issue History
Date Modified Username Field Change
======================================================================
19-Jul-06 09:40 dustmite New Issue
19-Jul-06 11:37 paul Note Added: 0001306
19-Jul-06 12:35 dustmite Note Added: 0001307
19-Jul-06 12:36 dustmite Note Edited: 0001307
19-Jul-06 12:38 dustmite File Added: dbmail.log.gz
19-Jul-06 14:15 paul Note Added: 0001308
20-Jul-06 10:48 paul Note Added: 0001309
08-Aug-06 20:06 aaron Note Added: 0001333
23-Aug-06 06:23 aaron Status new => resolved
23-Aug-06 06:23 aaron Resolution open => no change
required
23-Aug-06 06:23 aaron Assigned To => aaron
23-Aug-06 06:23 aaron Note Added: 0001365
23-Aug-06 22:36 paul Note Added: 0001367
23-Aug-06 22:36 paul Status resolved => assigned
23-Aug-06 22:36 paul Resolution no change required =>
reopened
23-Aug-06 22:36 paul Relationship added related to 0000387
23-Aug-06 22:38 paul Relationship added related to 0000394
26-Aug-06 12:19 jasb Issue Monitored: jasb
26-Aug-06 18:45 rycamor Issue Monitored: rycamor
03-Sep-06 13:30 paul Status assigned => resolved
03-Sep-06 13:30 paul Fixed in Version => 2.1.8
03-Sep-06 13:30 paul Resolution reopened => fixed
======================================================================