Dovecot v2.2.31 released

The following information has been provided by the Dovecot-news mailing list.

https://dovecot.org/releases/2.2/dovecot-2.2.31.tar.gz
https://dovecot.org/releases/2.2/dovecot-2.2.31.tar.gz.sig

This should be a great and stable release for the summer 🙂 v2.2.32 is planned for the end of August. Hopefully soon afterwards we can get back to v2.3.

* LMTP: Removed “(Dovecot)” from added Received headers. Some
installations want to hide it, and there’s not really any good reason
for anyone to have it.

+ Add ssl_alt_cert and ssl_alt_key settings to add support for
having both RSA and ECDSA certificates.
+ dsync/imapc, pop3-migration plugin: Strip trailing whitespace from
headers when matching mails. This helps with migrations from Zimbra.
+ acl: Add acl_globals_only setting to disable looking up
per-mailbox dovecot-acl files.
+ Parse invalid message addresses better. This mainly affects the
generated IMAP ENVELOPE replies.
– v2.2.30 wasn’t fixing corrupted dovecot.index.cache files properly.
It could have deleted wrong mail’s cache or assert-crashed.
– v2.2.30 mail-crypt-acl plugin was assert-crashing
– v2.2.30 welcome plugin wasn’t working
– Various fixes to handling mailbox listing. Especially related to
handling nonexistent autocreated/autosubscribed mailboxes and ACLs.
– Global ACL file was parsed as if it was local ACL file. This caused
some of the ACL rule interactions to not work exactly as intended.
– auth: forward_* fields didn’t work properly: Only the first forward
field was working, and only if the first passdb lookup succeeded.
– Using mail_sort_max_read_count sometimes caused “Broken sort-*
indexes, resetting” errors.
– Using mail_sort_max_read_count may have caused very high CPU usage.
– Message address parsing could have crashed on invalid input.
– imapc_features=fetch-headers wasn’t always working correctly and
caused the full header to be fetched.
– imapc: Various bugfixes related to connection failure handling.
– quota=imapc sent unnecessary FETCH RFC822.SIZE to server when
expunging mails.
– quota=count: quota_warning = -storage=.. was never executed
– quota=count: Add support for “ns” parameter
– dsync: Fix incremental syncing for mails that don’t have Date or
Message-ID headers.
– imap: Fix hang when client sends pipelined SEARCH +
EXPUNGE/CLOSE/LOGOUT.
– oauth2: Token validation didn’t accept empty server responses.
– imap: NOTIFY command has been almost completely broken since the
beginning. I guess nobody has been trying to use it.