Bug 204653 - Akonadi IMAP does not support GMX/UnitedInternet IMAP servers (imap.gmx.net lacks UIDPLUS)
Summary: Akonadi IMAP does not support GMX/UnitedInternet IMAP servers (imap.gmx.net l...
Status: RESOLVED FIXED
Alias: None
Product: Akonadi
Classification: Frameworks and Libraries
Component: IMAP resource (show other bugs)
Version: 1.2.0
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: Kevin Ottens
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-08-21 14:21 UTC by Johannes Truschnigg
Modified: 2009-10-23 22:51 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Johannes Truschnigg 2009-08-21 14:21:16 UTC
Version:           1.2.0 (using KDE 4.3.0)
Compiler:          GCC 4.4.1 x86_64 on Core 2 Quad Q6600 with CFLAGS="-O2 -pipe -march=native"
OS:                Linux
Installed from:    Gentoo Packages

When trying to add an Akonadi IMAP resource to the AKonadi configuration with a GMX (http://www.gmx.net/) IMAP-enabled account, configuration cannot complete, and stops with the following error:

"Cannot use the IMAP server imap.gmx.net, some mandatory capabilities are missing: UIDPLUS. Please ask your sysadmin to upgrade the server."

tmcguire on irc://irc.freenode.net/akonadi asked me to report this, and mused that (I quote) maybe "it is like google and they just forgot to list the capability." I'll try to contact GMX support staff and report any possibly helpful answer(s) here.
Comment 1 Johannes Truschnigg 2009-08-21 14:56:33 UTC
For sake of completeness, the GMX imapd seems to support the following capabilities:

- snip -
* OK GMX IMAP4 StreamProxy ready
. login [user] [passwd]
. OK [user] logged in
. capability
* CAPABILITY IMAP4 IMAP4rev1 IDLE AUTH=LOGIN AUTH=CRAM-MD5 UNSELECT LITERAL+
. OK Completed
. logout
. OK Completed
* BYE
closed
- snip -
Comment 2 Thomas McGuire 2009-08-21 15:20:21 UTC
If GMX _really_ does not support UIDPLUS, maybe we can fall back on full syncing?
I imagine other servers are also as crappy as GMX.
Comment 3 Kevin Ottens 2009-08-25 12:11:42 UTC
I don't have a GMX IMAP account to test with. Could you try the following in a telnet session (I'm asking since you already did that for CAPABILITY):
1) login to your account as you did for CAPABILITY
2) . SELECT INBOX
3) . FETCH 1 UID
4) Note down the returned UID, I'll refer to it as $uid below
5) . UID FETCH $uid FLAGS

If 5 fails then GMX truely doesn't support UIDPLUS.
Comment 4 Johannes Truschnigg 2009-08-29 10:23:58 UTC
OK, from my understanding, this means that UIDPLUS actually is supported, but not advertised by the server:

--- snip ---
[...]
. FETCH 1 UID
* 1 FETCH (UID 1465)
. OK Completed
. UID FETCH 1465 FLAGS
* 1 FETCH (UID 1465 FLAGS (\Seen))
. OK Completed
--- snip ---
Comment 5 Kevin Ottens 2009-08-29 12:36:15 UTC
Indeed seems very likely... So we could perhaps implement a small workaround.

Just to be extra sure, could you check it's returning the fame mail both for FETCH 1 and UID FETCH $uid ?

For that fetch the ENVELOPE in both cases instead of FLAGS.

Thanks.
Comment 6 Christophe Marin 2009-10-01 16:51:52 UTC
using imap.gmx.fr (you can get a free account from gmx.fr) :

telnet imap.gmx.fr 143
Trying 213.165.64.41...
Connected to imap.gmx.fr.
Escape character is '^]'.
l* OK GMX IMAP4 StreamProxy ready
a001 login [login] [pass]
a001 OK 54663050 logged in

a002 capability
* CAPABILITY IMAP4 IMAP4rev1 IDLE AUTH=LOGIN AUTH=CRAM-MD5 UNSELECT LITERAL+
a002 OK Completed

a003 select INBOX
* FLAGS (\Answered \Flagged \Draft \Deleted \Seen)
* OK [PERMANENTFLAGS (\Answered \Flagged \Draft \Deleted \Seen)]
* 4 EXISTS
* 2 RECENT
* OK [UNSEEN 3]
* OK [UIDVALIDITY 1237467522]
* OK [UIDNEXT 18]
a003 OK [READ-WRITE] Completed

a004 FETCH 1 UID
* 1 FETCH (UID 14)
a004 OK Completed

a005 UID FETCH 14 FLAGS
* 1 FETCH (UID 14 FLAGS (\Seen))
a005 OK Completed

a008 UID FETCH 14 ENVELOPE
* 1 FETCH (UID 14 ENVELOPE ("Tue, 11 Aug 2009 17:31:35 +0200 (CEST)" "La =?ISO-8859-1?Q?cl=E9_d'une_organisation_=E0_succ=E8s?=" (("GMX Update" NIL "update" "gmx-mailings.com")) (("GMX Update" NIL "update" "gmx-mailings.com")) (("GMX Update" NIL "update" "gmx-mailings.com")) ((NIL NIL "[login]" "gmx.fr")) NIL NIL NIL "<20090811153135.6FF01220B9C9@newsletter02.web.de>"))
a008 OK Completed

a009 FETCH 1 ENVELOPE
* 1 FETCH (UID 14 ENVELOPE ("Tue, 11 Aug 2009 17:31:35 +0200 (CEST)" "La =?ISO-8859-1?Q?cl=E9_d'une_organisation_=E0_succ=E8s?=" (("GMX Update" NIL "update" "gmx-mailings.com")) (("GMX Update" NIL "update" "gmx-mailings.com")) (("GMX Update" NIL "update" "gmx-mailings.com")) ((NIL NIL "[login]" "gmx.fr")) NIL NIL NIL "<20090811153135.6FF01220B9C9@newsletter02.web.de>"))
Comment 7 Salvo "LtWorf" Tomaselli 2009-10-02 12:51:39 UTC
Don't you think it is a bit strange to rely on an extension of the IMAP protocol, rather than just considering it as an optional thing?
Comment 8 Kevin Ottens 2009-10-05 15:10:12 UTC
SVN commit 1031566 by ervin:

Also catch the server greeting in the session so that we can check it
later. Useful for some server detection.

CCBUG: 204653


 M  +18 -1     session.cpp  
 M  +3 -0      session.h  
 M  +1 -0      session_p.h  
 M  +2 -0      tests/testimapserver.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1031566
Comment 9 Kevin Ottens 2009-10-05 15:12:27 UTC
SVN commit 1031567 by ervin:

If the server claims to be GMX ignore the UIDPLUS capability (just like
for GMail) as it doesn't report it but apparently implements it.

BUG: 204653


 M  +5 -1      imapaccount.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1031567