Mercurial > dovecot > core-2.2
changeset 19665:cb104cf148af
imapc: If FETCH didn't send our wanted data, log the tagged FETCH reply text.
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 28 Jan 2016 17:43:01 +0200 |
parents | d6561d5a8fb4 |
children | 2470745d19e7 |
files | src/lib-storage/index/imapc/imapc-mail-fetch.c src/lib-storage/index/imapc/imapc-mail.c src/lib-storage/index/imapc/imapc-mail.h |
diffstat | 3 files changed, 6 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/index/imapc/imapc-mail-fetch.c Thu Jan 28 17:29:57 2016 +0200 +++ b/src/lib-storage/index/imapc/imapc-mail-fetch.c Thu Jan 28 17:43:01 2016 +0200 @@ -21,6 +21,8 @@ struct imapc_mailbox *mbox = (struct imapc_mailbox *)mail->imail.mail.mail.box; + mail->last_fetch_reply = p_strdup(mail->imail.mail.pool, reply->text_full); + switch (reply->state) { case IMAPC_COMMAND_STATE_OK: break;
--- a/src/lib-storage/index/imapc/imapc-mail.c Thu Jan 28 17:29:57 2016 +0200 +++ b/src/lib-storage/index/imapc/imapc-mail.c Thu Jan 28 17:43:01 2016 +0200 @@ -84,9 +84,10 @@ */ fix_broken_mail = imail->fetch_ignore_if_missing; mail_storage_set_critical(mail->box->storage, - "imapc: Remote server didn't send %s for UID %u in %s%s", + "imapc: Remote server didn't send %s for UID %u in %s%s (FETCH replied: %s)", field, mail->uid, mail->box->vname, - fix_broken_mail ? " - treating it as empty" : ""); + fix_broken_mail ? " - treating it as empty" : "", + imail->last_fetch_reply); } return fix_broken_mail ? 0 : -1; }
--- a/src/lib-storage/index/imapc/imapc-mail.h Thu Jan 28 17:29:57 2016 +0200 +++ b/src/lib-storage/index/imapc/imapc-mail.h Thu Jan 28 17:43:01 2016 +0200 @@ -14,6 +14,7 @@ const char *const *fetching_headers; unsigned int fetch_count; bool fetch_sent; + const char *last_fetch_reply; int fd; buffer_t *body;