It's not an authentication failure, which would imply that the user or
password was wrong.
IMAPC_COMMAND_STATE_OK,
IMAPC_COMMAND_STATE_NO,
IMAPC_COMMAND_STATE_BAD,
+ /* Authentication to IMAP server failed (NO or BAD) */
IMAPC_COMMAND_STATE_AUTH_FAILED,
+ /* Client was unexpectedly disconnected. */
IMAPC_COMMAND_STATE_DISCONNECTED
};
const char *error)
{
struct imapc_command_reply reply = *_reply;
- reply.state = IMAPC_COMMAND_STATE_AUTH_FAILED;
+
+ if (reply.state != IMAPC_COMMAND_STATE_DISCONNECTED)
+ reply.state = IMAPC_COMMAND_STATE_AUTH_FAILED;
reply.text_without_resp = reply.text_full =
t_strdup_printf("Authentication failed: %s", error);
i_error("imapc(%s): %s", conn->name, reply.text_full);