Closed quartznets closed 4 years ago
I can confirm the same behaviour on Android 1.12.2 F-Droid, Zoho, custom domain. Desktop 1.12.0 Debian 64-bit seems to work fine.
The corresponding thread in the Delta Chat support forum is https://support.delta.chat/t/not-receiving-emails-in-dc-using-zoho/1158 , for reference.
@EclecticSoftwareEngineer Thank you for confirming. Could you be so kind and compare the settings of your mail account in Android and Desktop, please, to verify that they are the same? Many thanks in advance.
All account settings on Android and Desktop were the same, except the one which stopped receiving messages (Android 1.12.2) is using imappro.zoho.com, whereas the desktop one is using imap.zoho.com. I notice now that these resolve to different IP addresses.
However, everything has been working fine up until very recently (like a couple of days ago, I think). Changing the Android instance to use imap.zoho.com does not fix the problem.
I have a couple more desktop instances I can check, but won't have access to them until the day after tomorrow.
According to Zoho, imap.zoho.eu
is for "home" customers, and imappro.zoho.eu
for business customers. Also the top level domain is not com
, but eu
. See https://www.zoho.com/mail/help/imap-access.html#alink1 .
According to Zoho,
imap.zoho.eu
is for "home" customers, andimappro.zoho.eu
for business customers.
imappro
is also for custom domains. Custom domains users are considered 'business customers' in Zoho.
Also the top level domain is not
com
, buteu
. See https://www.zoho.com/mail/help/imap-access.html#alink1 .
It seems we have completely different information on the same link. For me it's clearly com
and it's working perfectly using any IMAP client (except Deltachat)
Quite interesting, I get this on my screen:
The error that was posted are characters as ASCII numbers. All numbers replaced by characters:
src/scheduler.rs:147: IMAP IDLE protocol failed to init/complete: io: Error(([* FLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)
* OK [PERMANENTFLAGS (\* \Answered \Flagged \Deleted \Seen \Draft)] Permanent flags
A0003 OK [READ-WRITE] SELECT completed], Alt)) during parsing of [* FLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)
* OK [PERMANENTFLAGS (\* \Answered \Flagged \Deleted \Seen \Draft)] Permanent flags
A0003 OK [READ-WRITE] SELECT completed]
@Hocuri The first A0003
statement includes , Alt
, while the second does not.
Made a workaround: https://github.com/djc/tokio-imap/pull/91
The problem is that FLAGS
response is not allowed to contain \*
according to https://tools.ietf.org/html/rfc3501
Could someone with a Zoho account send a request to fix it? You can point to https://github.com/djc/tokio-imap/pull/91/files
cc @quartznets @EclecticSoftwareEngineer
I'm happy to do that tomorrow. Will confirm when done.
Thanks for your work on this!
David
Besides djc/tokio-imap#91 I wonder if we can do something to ignore any unknown/unparseable responses and skip to next response line. Maybe in async-imap. cc @dignifiedquire
I have reported this issue to Zoho, and am awaiting a response.
David Trudgett
I received the following reply from Zoho tech support:
Hello David,
Greetings from the Zoho mail team.
Sorry for the inadvertent delay in responding.
On checking the issue that you had reported, we found that '*' can be included in flag response according to RFC standard. And, it is mentioned in the RFC you have shared with us, https://tools.ietf.org/html/rfc3501, "The PERMANENTFLAGS list can also include the special flag *, which indicates that it is possible to create new keywords by attempting to store those flags in the mailbox." We will not be able to remove the character from our Flags response as of now.
Please check the attached file for your reference.
Do write back to us for further queries or clarifications. We will be happy to help you.
Regards, Kowsalya
But the problem is that in this case \*
appears not in PERMANENTFLAGS
, but in FLAGS
:
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)
Yes, that makes sense to me. There would not even be any meaning to having * in FLAGS, in that case.
I will reply to them with this clarification.
Thanks, David
I have sent the clarification and am now awaiting a response.
On general principles, I would comment that for optimum reliability and interoperability, one should be lenient in parsing incoming data, and strict in formatting outgoing data. We can't control the rest of the Internet, but we can control ourselves. In this case, it would seem to make sense to ignore and possibly log unexpected, invalid or unknown flags, rather than to fail.
On general principles, I would comment that for optimum reliability and interoperability, one should be lenient in parsing incoming data, and strict in formatting outgoing data. We can't control the rest of the Internet, but we can control ourselves. In this case, it would seem to make sense to ignore and possibly log unexpected, invalid or unknown flags, rather than to fail.
Sure, this will be fixed when a new version of imap-proto is released and DC updates to it.
FWIW, I have received a response from Zoho saying that the fix for the issue should come through in a "month or two'.
@EclecticSoftwareEngineer Thanks for letting us know. :+1:
With a new async-email release from @dignifiedquire we can fix this issue on our side, i think.
Operating System (Linux/Mac/Windows/iOS/Android): Android
Delta Chat Version: 1.12.2-fat from F-Droid
Expected behavior: Receive emails from Zoho's IMAP in DeltaChat
Actual behavior: Deltachat doesn't receive emails from Zoho's IMAP (imappro.zoho.com because it's on my own domain), while works fine with other providers (tested other account self-hosted on dockerized mailcow)
Show classic emails
option is set toAll
Nothing in
Contact requests
Steps to reproduce the problem: Login into the Zoho email account with Deltachat, send some emails to it from other email box
Screenshots: Nothing extraordinary to screenshot, just ordinary app window with no chats (except app's default ones)
Logs: I've attached the full deltachat log to this post -> deltachat-log-20200814-001652.txt which was made on a clean instance trying to reproduce the problem However, I'd like to highlight this one here as it's noticable: