[dovecot/core] 7eb0f6: lib-imap-client: Avoid infinite reconnection loops...
GitHub
noreply at github.com
Fri May 19 14:00:14 EEST 2017
Branch: refs/heads/master-2.2
Home: https://github.com/dovecot/core
Commit: 7eb0f6c02f2d0d662e77bf7c126ff3664c7a50b1
https://github.com/dovecot/core/commit/7eb0f6c02f2d0d662e77bf7c126ff3664c7a50b1
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-imap-client/imapc-client.h
M src/lib-imap-client/imapc-connection.c
Log Message:
-----------
lib-imap-client: Avoid infinite reconnection loops when retrying command fails
reconnect_command_count wasn't calculated correctly, because the SELECT and
potentially other following sync commands weren't included in it.
Commit: 890b2c9bba8f955c694b01cc064ce03b551258f9
https://github.com/dovecot/core/commit/890b2c9bba8f955c694b01cc064ce03b551258f9
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-storage/index/imapc/imapc-storage.c
Log Message:
-----------
imapc: If initial SELECT fails, don't resend it twice on reconnect.
Commit: cd56eb08bcfa27317babb4cead2c0d1c715677fd
https://github.com/dovecot/core/commit/cd56eb08bcfa27317babb4cead2c0d1c715677fd
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-storage/index/imapc/imapc-sync.c
Log Message:
-----------
imapc: Avoid resending duplicate FETCH when reconnecting during the initial sync
Commit: 5e1694a575134fa95f530ea6da7c6b7fdc7b71e0
https://github.com/dovecot/core/commit/5e1694a575134fa95f530ea6da7c6b7fdc7b71e0
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-imap/imap-parser.c
Log Message:
-----------
lib-imap: imap_parser_unref() should always set parser=NULL
Not just when the last reference is cleared. This is how *_unref()s should
work everywhere in Dovecot. This fixes a bug in lib-imap-client where a
parser could have been accessed after it was already freed.
Commit: ec7aec974ee60a48cb04def2cd4440eff01bc3b7
https://github.com/dovecot/core/commit/ec7aec974ee60a48cb04def2cd4440eff01bc3b7
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-imap-client/imapc-client.c
M src/lib-imap-client/imapc-client.h
M src/lib-imap-client/imapc-connection.c
M src/lib-imap-client/imapc-connection.h
M src/lib-storage/index/imapc/imapc-mailbox.c
M src/lib-storage/index/imapc/imapc-storage.c
Log Message:
-----------
imapc: Fix infinite reconnection when server keeps sending corrupted state
When corrupted state was found, imapc_client_mailbox_reconnect() is called
to reconnect. This call skipped the normal "is it safe to reconnect?"
checks causing potentially infinite reconnections.
Commit: dacfe2acf5a33c797a70c22dfa554b656259e222
https://github.com/dovecot/core/commit/dacfe2acf5a33c797a70c22dfa554b656259e222
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-imap-client/imapc-client.c
M src/lib-imap-client/imapc-connection.c
M src/lib-imap-client/imapc-connection.h
Log Message:
-----------
lib-imap-client: Change server IP only on connect() failures
Also log an warning-level message about it. This is mainly useful to see
that a slow connection could be caused by a connect() timeout. Since more
IPs are still available, it's not yet an error.
Commit: d13fe79132d7e6f83b19ca879e4a00c6044b3759
https://github.com/dovecot/core/commit/d13fe79132d7e6f83b19ca879e4a00c6044b3759
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-storage/index/imapc/imapc-storage.c
Log Message:
-----------
imapc: Fix assert-crash if server doesn't send EXISTS reply to SELECT
Fixes:
Panic: file imapc-sync.c: line 477 (imapc_sync_index): assertion failed: (mbox->sync_fetch_first_uid == 1)
Commit: c8be24bae38360d192ae52a5bba9b3b6aadd499c
https://github.com/dovecot/core/commit/c8be24bae38360d192ae52a5bba9b3b6aadd499c
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-05-19 (Fri, 19 May 2017)
Changed paths:
M src/lib-storage/index/imapc/imapc-mailbox.c
M src/lib-storage/index/imapc/imapc-storage.c
Log Message:
-----------
imapc: Make sure a valid UIDVALIDITY is returned by SELECT
Fixes errors such as:
Error: Synchronization corrupted index header (in-memory index): uidvalidity=0, but next_uid=9
Compare: https://github.com/dovecot/core/compare/5fbdfc545f19...c8be24bae383
More information about the dovecot-cvs
mailing list