MBOX-Line: From tss at iki.fi  Fri Mar  7 09:27:30 2014
To: imap-protocol@u.washington.edu
From: Timo Sirainen <tss@iki.fi>
Date: Fri Jun  8 12:34:52 2018
Subject: [Imap-protocol] Is it okay/common for servers to ignore
	commands sent before the greeting? (gmail seems to?)
In-Reply-To: <cfe80347-ed90-4e5b-a69a-93f99e2158c4@flaska.net>
References: <5319E04C.3070105@mozilla.com>
	<cfe80347-ed90-4e5b-a69a-93f99e2158c4@flaska.net>
Message-ID: <4012E0DA-1598-47CA-804E-9ED75CE22327@iki.fi>

On 7.3.2014, at 18.01, Jan Kundr?t <jkt@flaska.net> wrote:

> On Friday, 7 March 2014 16:05:48 CEST, Andrew Sutherland wrote:
>> We're seeing a problem in the Firefox OS Gaia e-mail app where if we manage to send our "A1 CAPABILITY" request to the gmail IMAP server (initial-TLS imaps/993) before it sends its greeting, it acts like it never hears the request.  Our not-so-clever state machine hangs until the connection times out.
> 
> Interesting. What my client is doing is patiently waiting for the initial response and checking whether the capability list is passed in there as a response code.

I think the ideal solution would be for everyone to start sending the CAPABILITY in the initial reply. Dovecot v2.x actually sends only a truncated CAPABILITY reply that contains only the extensions relevant to client before login. If you want to be sure not to break any clients, you could still do that and send the full capabilities list as a reply to the CAPABILITY command. The clients that understand the initial reply will also understand the updated OK [CAPABILITY ..] reply to LOGIN/AUTHENTICATE, while those that don't understand it will just request the CAPABILITY command directly.


