]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imapc: Use IMAPC_COMMAND_STATE_AUTH_FAILED to indicate auth failure
authorAki Tuomi <aki.tuomi@dovecot.fi>
Wed, 5 Apr 2017 11:23:26 +0000 (14:23 +0300)
committerAki Tuomi <aki.tuomi@dovecot.fi>
Wed, 5 Apr 2017 15:12:31 +0000 (18:12 +0300)
src/auth/passdb-imap.c
src/lib-imap-client/imapc-client.h
src/lib-imap-client/imapc-connection.c
src/lib-storage/index/imapc/imapc-mail-fetch.c

index 5a2645163f1a6bd60970ae26d3a18dd3b6fe9f2b..78b490985c902d7fdd37ddfc1225c8878bc22a2f 100644 (file)
@@ -55,6 +55,7 @@ passdb_imap_login_callback(const struct imapc_command_reply *reply,
                auth_request_log_info(request->auth_request, AUTH_SUBSYS_DB,
                                      "%s", reply->text_full);
                break;
+       case IMAPC_COMMAND_STATE_AUTH_FAILED:
        case IMAPC_COMMAND_STATE_BAD:
        case IMAPC_COMMAND_STATE_DISCONNECTED:
                auth_request_log_error(request->auth_request, AUTH_SUBSYS_DB,
index ed106d78c7d53ae728c30d456772da0b9b8c5768..ea7eae547e734cd3d7c79ed0654134ff7faa8168 100644 (file)
@@ -10,6 +10,7 @@ enum imapc_command_state {
        IMAPC_COMMAND_STATE_OK,
        IMAPC_COMMAND_STATE_NO,
        IMAPC_COMMAND_STATE_BAD,
+       IMAPC_COMMAND_STATE_AUTH_FAILED,
        IMAPC_COMMAND_STATE_DISCONNECTED
 };
 
index 23519bec0f50996a62f4f1cdc0bde0dc1b53eeee..db31ebc1c38ec5bede13f6e163a02a3d50ff4ffe 100644 (file)
@@ -164,6 +164,7 @@ imapc_auth_failed(struct imapc_connection *conn, const struct imapc_command_repl
                  const char *error)
 {
        struct imapc_command_reply reply = *_reply;
+       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);
index accd0a539b9231b3570f1b1e70f5f09784ce03b9..8534981aefc6ebea6e3cb37df8df92781bb4c9c8 100644 (file)
@@ -45,6 +45,7 @@ static void imapc_mail_set_failure(struct imapc_mail *mail,
                break;
        case IMAPC_COMMAND_STATE_BAD:
        case IMAPC_COMMAND_STATE_DISCONNECTED:
+       case IMAPC_COMMAND_STATE_AUTH_FAILED:
                mail->fetch_failed = TRUE;
                break;
        }