Bug 4803 - (int-129039) Modest sends empty ENABLE command when IMAP server advertises ENABLE but not CONDSTORE or QRESYNC capabilities
(int-129039)
: Modest sends empty ENABLE command when IMAP server advertises ENABLE but not ...
Status: RESOLVED FIXED
Product: Email
General
: 5.0-beta2
: All Maemo
: Low normal with 1 vote (vote)
: 5.0 (1.2009.41-10)
Assigned To: unassigned
: modest-bugs
: http://talk.maemo.org/showthread.php?...
: community-diablo, patch, upstream
:
:
  Show dependency tree
 
Reported: 2009-07-19 19:00 UTC by Lucas Maneos
Modified: 2009-10-22 07:57 UTC (History)
3 users (show)

See Also:


Attachments
patch to only send ENABLE if there are supported capabilities to request (759 bytes, patch)
2009-07-19 20:45 UTC, Lucas Maneos
Details


Note

You need to log in before you can comment on or make changes to this bug.


Description Lucas Maneos (reporter) 2009-07-19 19:00:01 UTC
SOFTWARE VERSION:
5.2008.43-7

STEPS TO REPRODUCE THE PROBLEM:
1. Configure an IMAP account to a server that advertises ENABLE but not
CONDSTORE or QRESYNC (eg 1und1.de)
2. Try to connect.

EXPECTED OUTCOME:
Successful connection and mail retrieval.

ACTUAL OUTCOME:
sending : B00002 CAPABILITY
received: * CAPABILITY IMAP4rev1 LITERAL+ ID STARTTLS CHILDREN QUOTA IDLE
NAMESPACE UIDPLUS UNSELECT SORT ENABLE
received: B00002 OK CAPABILITY finished.
sending : B00003 ENABLE
received: B00003 BAD expected atom instead of "end of data".
...
modest[5943]: GLIB DEBUG default - modest_tny_account_store_alert: error code
16 (IMAP command failed: expected atom instead of "end of data".

REPRODUCIBILITY:
Always.

EXTRA SOFTWARE INSTALLED:

OTHER COMMENTS:
The bug seems to be here:
http://tinymail.org/trac/tinymail/browser/trunk/libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c#L2141,
so it most likely affects Fremantle as well.  Can't test conclusively as I
don't have access to such a server.
Comment 1 Lucas Maneos (reporter) 2009-07-19 20:45:35 UTC
Created an attachment (id=1275) [details]
patch to only send ENABLE if there are supported capabilities to request

This reportedly fixes the problem.  It's against the Diablo version, but also
applies to tinymail trunk with some offset.
Comment 2 Sergio Villar Senin 2009-07-27 11:35:46 UTC
Lucas being a bug in tinymail, can you send the patch to
tinymail-devel-list@gnome.org for reviewing.

And add a nice changelog entry in your patch too :)
Comment 3 Lucas Maneos (reporter) 2009-07-27 22:31:58 UTC
Done, this should be fixed in Fremantle with tinymail >= r3951.
Comment 4 Andre Klapper maemo.org 2009-07-31 13:43:42 UTC
Can anybody verify the fix by building from latest git?
Comment 5 Lucas Maneos (reporter) 2009-08-01 13:00:09 UTC
(In reply to comment #4)
> Can anybody verify the fix by building from latest git?

Tentatively yes - like I said I don't have access to an 1und1.de IMAP account,
but driving it with a dummy "server" perl script based on the log posted to the
forum no ENABLE command is sent if no supported capability is discovered:

sending : A00002 CAPABILITY
received: * CAPABILITY IMAP4rev1 LITERAL+ ID STARTTLS CHILDREN QUOTA IDLE
NAMESPACE UIDPLUS UNSELECT SORT ENABLE
received: A00002 OK CAPABILITY finished.
sending : A00003 NAMESPACE

and also:

sending : A00002 CAPABILITY
received: * CAPABILITY IMAP4rev1 LITERAL+ ID STARTTLS CHILDREN QUOTA IDLE
NAMESPACE UIDPLUS UNSELECT SORT ENABLE CONDSTORE QRESYNC X-FOO
received: A00002 OK CAPABILITY finished.
sending : A00003 ENABLE QRESYNC CONDSTORE
received: * ENABLED QRESYNC CONDSTORE
received: A00003 OK ENABLE finished.
sending : A00004 NAMESPACE
Comment 6 Andre Klapper maemo.org 2009-08-03 13:02:27 UTC
Thanks! :) Will be fixed in Fremantle.
Comment 7 Lucas Maneos (reporter) 2009-10-22 07:57:46 UTC
Marking patches of interest to Diablo (Maemo4) community updates, please excuse
the noise.