dovecot-2.2: Merged changes from v2.1 tree.
dovecot at dovecot.org
dovecot at dovecot.org
Sun May 20 03:26:37 EEST 2012
details: http://hg.dovecot.org/dovecot-2.2/rev/fbb1ecb9b888
changeset: 14576:fbb1ecb9b888
user: Timo Sirainen <tss at iki.fi>
date: Sun May 20 03:25:04 2012 +0300
description:
Merged changes from v2.1 tree.
diffstat:
.hgignore | 2 +
.hgsigs | 5 +
.hgtags | 5 +
Makefile.am | 7 +-
NEWS | 93 +
TODO | 1 -
configure.in | 16 +-
doc/example-config/conf.d/10-mail.conf | 6 +
doc/example-config/conf.d/10-ssl.conf | 3 +
doc/example-config/conf.d/20-pop3.conf | 5 +
doc/example-config/dovecot.conf | 5 +
dovecot-config.in.in | 2 +-
src/Makefile.am | 1 +
src/anvil/anvil-connection.c | 2 +-
src/anvil/penalty.c | 6 +-
src/auth/Makefile.am | 22 +-
src/auth/auth-cache.c | 85 +-
src/auth/auth-client-connection.c | 11 +-
src/auth/auth-master-connection.c | 6 +-
src/auth/auth-request-handler.c | 30 +-
src/auth/auth-request.c | 131 +-
src/auth/auth-request.h | 11 +-
src/auth/auth-settings.c | 2 +-
src/auth/auth-stream.c | 2 +-
src/auth/auth-worker-client.c | 9 +-
src/auth/auth.c | 12 +-
src/auth/checkpassword-reply.c | 27 +-
src/auth/db-checkpassword.c | 474 +++++-
src/auth/db-checkpassword.h | 65 +-
src/auth/db-ldap.c | 43 +-
src/auth/db-ldap.h | 5 +-
src/auth/passdb-blocking.c | 2 +-
src/auth/passdb-cache.c | 4 +-
src/auth/passdb-checkpassword.c | 312 +---
src/auth/passdb-ldap.c | 1 -
src/auth/passdb-static.c | 2 +-
src/auth/test-auth-cache.c | 57 +
src/auth/userdb-checkpassword.c | 240 +--
src/auth/userdb-passwd.c | 25 +-
src/config/config-connection.c | 2 +-
src/config/config-filter.c | 12 +-
src/config/config-request.c | 2 +-
src/config/doveconf.c | 2 +-
src/dict/dict-commands.c | 8 +-
src/director/Makefile.am | 23 +-
src/director/director-connection.c | 1188 ++++++++++-----
src/director/director-connection.h | 16 +-
src/director/director-host.c | 35 +-
src/director/director-host.h | 14 +-
src/director/director-request.c | 89 +-
src/director/director-settings.c | 2 +
src/director/director-settings.h | 1 +
src/director/director-test.c | 2 +-
src/director/director.c | 347 +++-
src/director/director.h | 40 +-
src/director/doveadm-connection.c | 74 +-
src/director/login-connection.c | 2 +-
src/director/main.c | 8 +-
src/director/notify-connection.c | 9 +-
src/director/test-user-directory.c | 104 +
src/director/user-directory.c | 142 +-
src/director/user-directory.h | 18 +-
src/doveadm/Makefile.am | 5 +-
src/doveadm/client-connection.c | 59 +-
src/doveadm/doveadm-auth.c | 114 +-
src/doveadm/doveadm-director.c | 77 +-
src/doveadm/doveadm-mail-expunge.c | 66 +-
src/doveadm/doveadm-mail-import.c | 1 +
src/doveadm/doveadm-mail-iter.c | 18 +-
src/doveadm/doveadm-mail-iter.h | 2 +
src/doveadm/doveadm-mail-mailbox-status.c | 2 +-
src/doveadm/doveadm-mail-mailbox.c | 13 +-
src/doveadm/doveadm-mail-server.c | 16 +-
src/doveadm/doveadm-mail.c | 37 +-
src/doveadm/doveadm-mail.h | 8 +-
src/doveadm/doveadm-mailbox-list-iter.c | 65 +-
src/doveadm/doveadm-mount.c | 6 +-
src/doveadm/doveadm-mutf7.c | 2 +
src/doveadm/doveadm-penalty.c | 2 +-
src/doveadm/doveadm-proxy.c | 2 +-
src/doveadm/doveadm-settings.c | 2 +
src/doveadm/doveadm-settings.h | 1 +
src/doveadm/doveadm-stats.c | 2 +-
src/doveadm/doveadm-who.c | 2 +-
src/doveadm/doveadm.c | 1 +
src/doveadm/dsync/Makefile.am | 3 -
src/doveadm/dsync/doveadm-dsync.c | 463 ++++-
src/doveadm/dsync/dsync-brain-msgs.c | 2 +
src/doveadm/dsync/dsync-brain.c | 6 +-
src/doveadm/dsync/dsync-data.h | 1 +
src/doveadm/dsync/dsync-proxy-server.c | 2 +-
src/doveadm/dsync/dsync-worker-local.c | 46 +-
src/doveadm/dsync/dsync-worker.h | 3 +-
src/doveadm/dsync/test-dsync-proxy-server-cmd.c | 2 +
src/doveadm/server-connection.c | 16 +-
src/doveadm/server-connection.h | 1 +
src/imap-login/client.c | 4 +
src/imap-login/imap-proxy.c | 2 +
src/imap/Makefile.am | 13 +-
src/imap/cmd-append.c | 13 +-
src/imap/cmd-fetch.c | 5 +
src/imap/cmd-list.c | 24 +-
src/imap/imap-client.c | 11 +-
src/imap/imap-client.h | 4 +-
src/imap/imap-commands.c | 3 +-
src/imap/imap-sync.c | 7 +-
src/imap/main.c | 11 +-
src/indexer/Makefile.am | 13 +-
src/ipc/ipc-connection.c | 2 +-
src/lda/Makefile.am | 12 +-
src/lib-auth/auth-client-request.c | 6 +
src/lib-auth/auth-client.h | 1 +
src/lib-auth/auth-master.c | 4 +-
src/lib-auth/auth-server-connection.c | 2 +-
src/lib-dict/dict-file.c | 168 +-
src/lib-dict/dict-sql.c | 6 +-
src/lib-imap/test-imap-utf7.c | 2 +-
src/lib-index/mail-cache-fields.c | 2 +-
src/lib-index/mail-index-map.c | 10 +-
src/lib-index/mail-index-modseq.c | 5 +
src/lib-index/mail-index-modseq.h | 1 +
src/lib-index/mail-index-transaction-private.h | 4 +
src/lib-index/mail-index-transaction-update.c | 2 +-
src/lib-index/mail-index-transaction.c | 17 +
src/lib-index/mail-transaction-log-file.c | 2 +-
src/lib-index/test-mail-index-transaction-update.c | 6 +
src/lib-lda/mail-deliver.c | 8 +-
src/lib-mail/Makefile.am | 2 +
src/lib-mail/mail-user-hash.c | 41 +
src/lib-mail/mail-user-hash.h | 8 +
src/lib-mail/message-date.c | 10 +-
src/lib-mail/message-parser.c | 29 +-
src/lib-mail/rfc822-parser.c | 2 +-
src/lib-master/anvil-client.c | 2 +-
src/lib-master/master-login-auth.c | 4 +-
src/lib-master/master-login.c | 25 +-
src/lib-master/master-login.h | 3 +
src/lib-master/master-service-settings.c | 2 +-
src/lib-master/master-service.c | 2 +
src/lib-master/mountpoint-list.c | 32 +-
src/lib-master/mountpoint-list.h | 7 +-
src/lib-settings/settings-parser.c | 37 +-
src/lib-settings/settings-parser.h | 6 +-
src/lib-sql/driver-mysql.c | 4 +-
src/lib-sql/driver-pgsql.c | 3 +
src/lib-sql/driver-sqlpool.c | 4 +-
src/lib-ssl-iostream/Makefile.am | 2 +-
src/lib-ssl-iostream/iostream-openssl.c | 2 +
src/lib-storage/Makefile.am | 3 +-
src/lib-storage/fail-mailbox.c | 2 +-
src/lib-storage/index/Makefile.am | 3 -
src/lib-storage/index/cydir/cydir-mail.c | 6 +-
src/lib-storage/index/dbox-common/dbox-file.c | 5 +-
src/lib-storage/index/dbox-common/dbox-storage.c | 9 +-
src/lib-storage/index/dbox-common/dbox-storage.h | 2 -
src/lib-storage/index/dbox-multi/mdbox-map.c | 8 +-
src/lib-storage/index/dbox-multi/mdbox-purge.c | 6 +-
src/lib-storage/index/dbox-multi/mdbox-storage.c | 8 +-
src/lib-storage/index/dbox-multi/mdbox-sync.c | 8 +
src/lib-storage/index/dbox-single/sdbox-copy.c | 9 +-
src/lib-storage/index/dbox-single/sdbox-save.c | 9 +
src/lib-storage/index/dbox-single/sdbox-sync-rebuild.c | 1 +
src/lib-storage/index/dbox-single/sdbox-sync.c | 6 +-
src/lib-storage/index/imapc/imapc-list.c | 72 +-
src/lib-storage/index/imapc/imapc-mail-fetch.c | 18 +
src/lib-storage/index/imapc/imapc-mail.c | 101 +-
src/lib-storage/index/imapc/imapc-settings.c | 44 +
src/lib-storage/index/imapc/imapc-settings.h | 11 +
src/lib-storage/index/imapc/imapc-storage.h | 8 +-
src/lib-storage/index/index-mail.c | 6 +-
src/lib-storage/index/index-mail.h | 2 +-
src/lib-storage/index/index-search-private.h | 2 +
src/lib-storage/index/index-search.c | 39 +-
src/lib-storage/index/index-status.c | 16 +-
src/lib-storage/index/index-storage.c | 25 +-
src/lib-storage/index/index-thread.c | 3 +
src/lib-storage/index/index-transaction.c | 8 +
src/lib-storage/index/maildir/maildir-mail.c | 36 +-
src/lib-storage/index/maildir/maildir-save.c | 16 +-
src/lib-storage/index/maildir/maildir-storage.c | 11 +-
src/lib-storage/index/maildir/maildir-storage.h | 2 -
src/lib-storage/index/maildir/maildir-sync-index.c | 2 +
src/lib-storage/index/maildir/maildir-sync.c | 57 +-
src/lib-storage/index/maildir/maildir-sync.h | 1 +
src/lib-storage/index/maildir/maildir-uidlist.c | 14 +
src/lib-storage/index/maildir/maildir-util.c | 11 +
src/lib-storage/index/mbox/mbox-storage.h | 1 +
src/lib-storage/index/mbox/mbox-sync.c | 20 +-
src/lib-storage/index/pop3c/pop3c-client.c | 2 +-
src/lib-storage/index/pop3c/pop3c-mail.c | 2 +-
src/lib-storage/index/pop3c/pop3c-storage.c | 2 +-
src/lib-storage/index/raw/raw-storage.c | 1 +
src/lib-storage/index/shared/shared-storage.c | 34 +-
src/lib-storage/list/mailbox-list-fs-iter.c | 115 +-
src/lib-storage/list/mailbox-list-index-iter.c | 7 +-
src/lib-storage/list/mailbox-list-index-status.c | 2 +
src/lib-storage/list/mailbox-list-index-sync.c | 7 +-
src/lib-storage/list/mailbox-list-index.c | 69 +-
src/lib-storage/list/mailbox-list-index.h | 6 +
src/lib-storage/list/mailbox-list-maildir-iter.c | 20 +-
src/lib-storage/list/mailbox-list-subscriptions.c | 7 +-
src/lib-storage/list/mailbox-list-subscriptions.h | 3 +-
src/lib-storage/list/subscription-file.c | 34 +-
src/lib-storage/mail-namespace.c | 7 +
src/lib-storage/mail-search-register-human.c | 24 +-
src/lib-storage/mail-search-register-imap.c | 60 +-
src/lib-storage/mail-storage-private.h | 11 +-
src/lib-storage/mail-storage-service.c | 11 +-
src/lib-storage/mail-storage-service.h | 1 +
src/lib-storage/mail-storage-settings.c | 4 +
src/lib-storage/mail-storage-settings.h | 2 +
src/lib-storage/mail-storage.c | 116 +-
src/lib-storage/mail-storage.h | 10 +
src/lib-storage/mail-user.c | 70 +-
src/lib-storage/mail-user.h | 4 +
src/lib-storage/mailbox-list-iter.c | 19 +-
src/lib-storage/mailbox-list-private.h | 3 -
src/lib-storage/mailbox-list.c | 19 +
src/lib-storage/mailbox-list.h | 7 +-
src/lib-storage/mailbox-tree.c | 30 +-
src/lib-storage/mailbox-tree.h | 3 +-
src/lib-test/test-common.c | 2 +-
src/lib/array.c | 6 +-
src/lib/array.h | 20 +-
src/lib/compat.h | 3 +-
src/lib/data-stack.c | 38 +-
src/lib/eacces-error.c | 12 +-
src/lib/file-cache.c | 10 +-
src/lib/ioloop.c | 3 +-
src/lib/mempool-alloconly.c | 3 +-
src/lib/network.c | 4 +-
src/lib/ostream.c | 3 +-
src/lib/process-title.c | 2 +
src/lib/seq-range-array.c | 22 +-
src/lib/strfuncs.c | 45 +
src/lib/strfuncs.h | 4 +-
src/lib/test-array.c | 2 +-
src/lib/test-base64.c | 8 +-
src/lib/test-bsearch-insert-pos.c | 6 +-
src/lib/test-primes.c | 2 +-
src/lib/test-seq-range-array.c | 16 +-
src/lib/test-str-find.c | 3 +-
src/lib/test-strfuncs.c | 53 +
src/lib/test-var-expand.c | 31 +
src/lib/unlink-old-files.c | 18 +-
src/lib/unlink-old-files.h | 3 +-
src/lib/var-expand.c | 40 +-
src/lib/var-expand.h | 4 +
src/lmtp/Makefile.am | 12 +-
src/lmtp/commands.c | 13 +-
src/log/log-connection.c | 23 +-
src/log/main.c | 8 +-
src/login-common/Makefile.am | 3 +-
src/login-common/client-common-auth.c | 9 +
src/login-common/client-common.c | 172 +-
src/login-common/client-common.h | 12 +-
src/login-common/login-proxy-state.c | 56 +-
src/login-common/login-proxy.c | 43 +-
src/login-common/login-proxy.h | 3 +
src/login-common/login-settings.c | 6 +-
src/login-common/login-settings.h | 2 +
src/login-common/main.c | 2 +-
src/login-common/sasl-server.c | 8 +-
src/login-common/ssl-proxy-openssl.c | 99 +-
src/login-common/ssl-proxy.c | 7 +
src/login-common/ssl-proxy.h | 5 +-
src/master/main.c | 5 +-
src/master/master-settings.c | 2 +-
src/master/service-listen.c | 91 +
src/plugins/Makefile.am | 2 +
src/plugins/acl/acl-backend-vfile-acllist.c | 2 +-
src/plugins/acl/acl-backend-vfile.c | 3 +-
src/plugins/acl/acl-cache.c | 4 +
src/plugins/acl/acl-shared-storage.c | 20 +-
src/plugins/expire/doveadm-expire.c | 2 +
src/plugins/expire/expire-plugin.c | 13 +-
src/plugins/fts-lucene/fts-backend-lucene.c | 3 +-
src/plugins/fts-solr/fts-backend-solr.c | 34 +-
src/plugins/fts-squat/Makefile.am | 12 +-
src/plugins/fts-squat/fts-backend-squat.c | 5 +-
src/plugins/fts-squat/squat-trie.c | 1 +
src/plugins/fts-squat/squat-uidlist.c | 3 +
src/plugins/fts/Makefile.am | 1 +
src/plugins/fts/decode2text.sh | 22 +-
src/plugins/fts/fts-api-private.h | 4 +-
src/plugins/fts/fts-indexer.c | 25 +-
src/plugins/fts/fts-storage.c | 58 +-
src/plugins/fts/fts-storage.h | 1 +
src/plugins/imap-stats/imap-stats-plugin.c | 9 +-
src/plugins/mail-log/mail-log-plugin.c | 18 +-
src/plugins/notify/notify-storage.c | 9 +-
src/plugins/pop3-migration/Makefile.am | 17 +
src/plugins/pop3-migration/pop3-migration-plugin.c | 632 ++++++++
src/plugins/pop3-migration/pop3-migration-plugin.h | 7 +
src/plugins/quota/quota-count.c | 7 +-
src/plugins/quota/quota-private.h | 3 +
src/plugins/quota/quota-storage.c | 8 +
src/plugins/quota/quota.c | 30 +-
src/plugins/replication/Makefile.am | 25 +
src/plugins/replication/replication-plugin.c | 371 ++++
src/plugins/replication/replication-plugin.h | 9 +
src/plugins/stats/stats-connection.c | 36 +-
src/plugins/stats/stats-plugin.c | 235 +-
src/plugins/stats/stats-plugin.h | 3 +
src/plugins/trash/trash-plugin.c | 50 +-
src/plugins/virtual/virtual-mail.c | 8 +-
src/pop3-login/client.c | 3 +
src/pop3-login/pop3-proxy.c | 3 +-
src/pop3/Makefile.am | 13 +-
src/pop3/main.c | 4 +-
src/pop3/pop3-client.c | 44 +-
src/pop3/pop3-client.h | 9 +-
src/pop3/pop3-commands.c | 272 ++-
src/pop3/pop3-settings.c | 4 +-
src/pop3/pop3-settings.h | 1 +
src/replication/Makefile.am | 4 +
src/replication/aggregator/Makefile.am | 26 +
src/replication/aggregator/aggregator-settings.c | 85 +
src/replication/aggregator/aggregator-settings.h | 12 +
src/replication/aggregator/aggregator.c | 75 +
src/replication/aggregator/notify-connection.c | 154 ++
src/replication/aggregator/notify-connection.h | 9 +
src/replication/aggregator/replicator-connection.c | 325 ++++
src/replication/aggregator/replicator-connection.h | 25 +
src/replication/replication-common.h | 30 +
src/replication/replicator/Makefile.am | 30 +
src/replication/replicator/doveadm-connection.c | 195 ++
src/replication/replicator/doveadm-connection.h | 20 +
src/replication/replicator/notify-connection.c | 197 ++
src/replication/replicator/notify-connection.h | 13 +
src/replication/replicator/replicator-brain.c | 166 ++
src/replication/replicator/replicator-brain.h | 11 +
src/replication/replicator/replicator-queue.c | 371 ++++
src/replication/replicator/replicator-queue.h | 60 +
src/replication/replicator/replicator-settings.c | 80 +
src/replication/replicator/replicator-settings.h | 15 +
src/replication/replicator/replicator.c | 117 +
src/stats/mail-command.c | 71 +-
src/stats/mail-domain.c | 3 +-
src/stats/mail-ip.c | 3 +-
src/stats/mail-session.c | 8 +-
src/stats/mail-user.c | 3 +-
src/util/Makefile.am | 9 +-
src/util/script-login.c | 2 +-
update-version.sh | 2 +-
345 files changed, 9448 insertions(+), 2507 deletions(-)
diffs (truncated from 20512 to 300 lines):
diff -r 80688ab1ea3d -r fbb1ecb9b888 .hgignore
--- a/.hgignore Sat May 19 22:40:08 2012 +0300
+++ b/.hgignore Sun May 20 03:25:04 2012 +0300
@@ -85,6 +85,8 @@
src/plugins/fts-squat/squat-test
src/pop3-login/pop3-login
src/pop3/pop3
+src/replication/replicator/replicator
+src/replication/aggregator/aggregator
src/util/gdbhelper
src/util/listview
src/util/maildirlock
diff -r 80688ab1ea3d -r fbb1ecb9b888 .hgsigs
--- a/.hgsigs Sat May 19 22:40:08 2012 +0300
+++ b/.hgsigs Sun May 20 03:25:04 2012 +0300
@@ -41,3 +41,8 @@
736f1b7af190ea68e65719277bd8d3d4682e0844 0 iEYEABECAAYFAk87Kz4ACgkQyUhSUUBVismKXACeME7EBYoEuoLLELp0uX6B/lkgRWQAoJ2OAgz4mmluGbi0Db8grDDWSsTj
e2cd03cc9c690c4989fb53a1871b7109c547388a 0 iEYEABECAAYFAk89MXsACgkQyUhSUUBVisnPmwCgiAr4OfQX1uAjhuqj5X0xbd8O1NQAn2bQW+h8QPAbqN6dQRNTm82D2hNF
04b0acc03f1eaa0353888a75a452e5c8e61e4c94 0 iEYEABECAAYFAk9F+k0ACgkQyUhSUUBViskLmwCfUt/aex6wOIEohJKnRGA4diF5WxoAn2zlMxSaPX/b0LBmV1P46GAMqZbO
+744e0d7f1b255a9339060f761b850303121f14df 0 iEYEABECAAYFAk9h/8oACgkQyUhSUUBVism2OQCfWh62w8pMxJaf1oYx2A+2PxQvBocAn29RFDgZblGRLn7iMCPw6We1yiIw
+b9adfd52cb66d5d89d291b76b9845d6361216d12 0 iEYEABECAAYFAk9jbugACgkQyUhSUUBVislSgwCgpo3f0bsSujItBum/M6js8SzF06YAmwftHlwaOstKeALdjLR5vtF2c5F7
+2c21c940e19d97a772128a7f281cea302e157d73 0 iEYEABECAAYFAk+CtkYACgkQyUhSUUBVisknxgCfTJw2YPGJ17HbHRGmbwmCyLqepbMAn17j7IYzUfEU0xkXhCgwEAmk7XO4
+469cee314d9c54d2d7101ec9e38579fdc9610eaf 0 iEYEABECAAYFAk+VWqkACgkQyUhSUUBVislnXACfVjPqMmPUvYtXQXwqff0h7N76mZUAn02lPeUCyuyr1TF9e1hGM/sKgmko
+7c249e2a82a9cd33ae15ead6443c3499e16da623 0 iEYEABECAAYFAk+nX2sACgkQyUhSUUBVisn7uwCbBD3boxBOGEJ8OYsIJ57n5Cr09FAAoIvhxL6EHRB15AMOw4sPaALJ3/bB
diff -r 80688ab1ea3d -r fbb1ecb9b888 .hgtags
--- a/.hgtags Sat May 19 22:40:08 2012 +0300
+++ b/.hgtags Sun May 20 03:25:04 2012 +0300
@@ -78,3 +78,8 @@
736f1b7af190ea68e65719277bd8d3d4682e0844 2.1.rc7
e2cd03cc9c690c4989fb53a1871b7109c547388a 2.1.0
04b0acc03f1eaa0353888a75a452e5c8e61e4c94 2.1.1
+744e0d7f1b255a9339060f761b850303121f14df 2.1.2
+b9adfd52cb66d5d89d291b76b9845d6361216d12 2.1.3
+2c21c940e19d97a772128a7f281cea302e157d73 2.1.4
+469cee314d9c54d2d7101ec9e38579fdc9610eaf 2.1.5
+7c249e2a82a9cd33ae15ead6443c3499e16da623 2.1.6
diff -r 80688ab1ea3d -r fbb1ecb9b888 Makefile.am
--- a/Makefile.am Sat May 19 22:40:08 2012 +0300
+++ b/Makefile.am Sun May 20 03:25:04 2012 +0300
@@ -70,12 +70,17 @@
-e "s|^\(LIBDOVECOT_INCLUDE\)=.*$$|\1=-I$(pkgincludedir)|" \
> $(DESTDIR)$(pkglibdir)/dovecot-config
+uninstall-hook:
+ rm $(DESTDIR)$(pkglibdir)/dovecot-config
+
CLEANFILES = $(datafiles)
if HAVE_SYSTEMD
CLEANFILES += $systedmsystemunit_DATA
endif
-DISTCLEANFILES = $(top_builddir)/dovecot-version.h
+DISTCLEANFILES = \
+ $(top_builddir)/dovecot-version.h \
+ $(top_builddir)/dovecot-config
distcheck-hook:
if which scan-build > /dev/null; then \
diff -r 80688ab1ea3d -r fbb1ecb9b888 NEWS
--- a/NEWS Sat May 19 22:40:08 2012 +0300
+++ b/NEWS Sun May 20 03:25:04 2012 +0300
@@ -1,3 +1,96 @@
+v2.1.6 2012-05-07 Timo Sirainen <tss at iki.fi>
+
+ * Session ID is now included by default in auth and login process
+ log lines. It can be added to mail processes also by adding
+ %{session} to mail_log_prefix.
+
+ + Added ssl_require_crl setting, which specifies if CRL check must
+ be successful when verifying client certificates.
+ + Added mail_shared_explicit_inbox setting to specify if a shared INBOX
+ should be accessible as "shared/$user" or "shared/$user/INBOX".
+ - v2.1.5: Using "~/" as mail_location or elsewhere failed to actually
+ expand it to home directory.
+ - dbox: Fixed potential assert-crash when reading dbox files.
+ - trash plugin: Fixed behavior when quota is already over limit.
+ - mail_log plugin: Logging "copy" event didn't work.
+ - Proxying to backend server with SSL: Verifying server certificate
+ name always failed, because it was compared to an IP address.
+
+v2.1.5 2012-04-23 Timo Sirainen <tss at iki.fi>
+
+ * IMAP: When neither the session nor the mailbox has modseq tracking
+ enabled, return the mailbox as having NOMODSEQ in SELECT/EXAMINE
+ reply. Old versions in this situation always simply returned
+ HIGHESTMODSEQ as 1, which could have broken some clients.
+
+ + dict file: Added optional fcntl/flock locking (default is dotlock)
+ + fts-solr: doveadm fts rescan now resets indexes, which allows
+ reindexing mails. (This isn't a full rescan implementation like
+ fts-lucene has.)
+ + doveadm expunge: Added -d parameter to delete mailbox if it's
+ empty after expunging.
+ - IMAP: Several fixes related to mailbox listing in some configs
+ - director: A lot of fixes and performance improvements
+ - v2.1.4 didn't work without a mail home directory set
+ - mbox: Deleting a mailbox didn't delete its index files.
+ - pop3c: TOP command was sent incorrectly
+ - trash plugin didn't work properly
+ - LMTP: Don't add a duplicate Return-Path: header when proxying.
+ - listescape: Don't unescape namespace prefixes.
+
+v2.1.4 2012-04-09 Timo Sirainen <tss at iki.fi>
+
+ + Added mail_temp_scan_interval setting and changed its default value
+ from 8 hours to 1 week.
+ + Added pop3-migration plugin for easily doing a transparent IMAP+POP3
+ migration to Dovecot: http://wiki2.dovecot.org/Migration/Dsync
+ + doveadm user: Added -m parameter to show some of the mail settings.
+ - Proxying SSL connections crashed in v2.1.[23]
+ - fts-solr: Indexing mail bodies was broken.
+ - director: Several changes to significantly improve error handling
+ - doveadm import didn't import messages' flags
+ - mail_full_filesystem_access=yes was broken
+ - Make sure IMAP clients can't create directories when accessing
+ nonexistent users' mailboxes via shared namespace.
+ - Dovecot auth clients authenticating via TCP socket could have failed
+ with bogus "PID already in use" errors.
+
+v2.1.3 2012-03-16 Timo Sirainen <tss at iki.fi>
+
+ - mdbox was broken in v2.1.2
+
+v2.1.2 2012-03-15 Timo Sirainen <tss at iki.fi>
+
+ + Initial implementation of dsync-based replication. For now this
+ should be used only on non-critical systems.
+ + Proxying: POP3 now supports sending remote IP+port from proxy to
+ backend server via Dovecot-specific XCLIENT extension.
+ + Proxying: proxy_maybe=yes with host=<hostname> (instead of IP)
+ works now properly.
+ + Proxying: Added auth_proxy_self setting
+ + Proxying: Added proxy_always extra field (see wiki docs)
+ + Added director_username_hash setting to specify what part of the
+ username is hashed. This can be used to implement per-domain
+ backends (which allows safely accessing shared mailboxes within
+ domain).
+ + Added a "session ID" string for imap/pop3 connections, available
+ in %{session} variable. The session ID passes through Dovecot
+ IMAP/POP3 proxying to backend server. The same session ID is can be
+ reused after a long time (currently a bit under 9 years).
+ + passdb checkpassword: Support "credentials lookups" (for
+ non-plaintext auth and for lmtp_proxy lookups)
+ + fts: Added fts_index_timeout setting to abort search if indexing
+ hasn't finished by then (default is to wait forever).
+ - doveadm sync: If mailbox was expunged empty, messages may have
+ become back instead of also being expunged in the other side.
+ - director: If user logged into two directors while near user
+ expiration, the directors might have redirected the user to two
+ different backends.
+ - imap_id_* settings were ignored before login.
+ - Several fixes to mailbox_list_index=yes
+ - Previous v2.1.x didn't log all messages at shutdown.
+ - mbox: Fixed accessing Dovecot v1.x mbox index files without errors.
+
v2.1.1 2012-02-23 Timo Sirainen <tss at iki.fi>
+ dsync: If message with same GUID is saved multiple times in session,
diff -r 80688ab1ea3d -r fbb1ecb9b888 TODO
--- a/TODO Sat May 19 22:40:08 2012 +0300
+++ b/TODO Sun May 20 03:25:04 2012 +0300
@@ -46,7 +46,6 @@
non-userdb_* extra fields too?
- imap, pop3: if client init fails, wait a second or two before disconnecting
client.
- - doveadm expunge parameter to delete empty mailboxes (for lazy-expunge)
- doveadm search savedbefore 7d could be optimized in large mailboxes..
- mdbox: storage rebuilding could log about changes it does
- mdbox: broken extrefs header keeps causing index rebuilds
diff -r 80688ab1ea3d -r fbb1ecb9b888 configure.in
--- a/configure.in Sat May 19 22:40:08 2012 +0300
+++ b/configure.in Sun May 20 03:25:04 2012 +0300
@@ -2490,10 +2490,13 @@
want_ssl_libs=yes
fi
done
+LINKED_STORAGE_LDADD=
if test "$want_ssl_libs" = yes; then
LINKED_STORAGE_LIBS="$LINKED_STORAGE_LIBS \$(top_builddir)/src/lib-ssl-iostream/libssl_iostream.la"
+ LINKED_STORAGE_LDADD="$SSL_LIBS"
fi
AC_SUBST(LINKED_STORAGE_LIBS)
+AC_SUBST(LINKED_STORAGE_LDADD)
AC_SUBST(mailbox_list_drivers)
AC_DEFINE_UNQUOTED(MAIL_STORAGES, "$mail_storages", List of compiled in mail storages)
@@ -2509,7 +2512,7 @@
if test "$want_shared_libs" = "yes"; then
LIBDOVECOT_DEPS='$(top_builddir)/src/lib-dovecot/libdovecot.la'
LIBDOVECOT="$LIBDOVECOT_DEPS"
- LIBDOVECOT_STORAGE='$(top_builddir)/src/lib-storage/libdovecot-storage.la'
+ LIBDOVECOT_STORAGE_DEPS='$(top_builddir)/src/lib-storage/libdovecot-storage.la'
LIBDOVECOT_LOGIN='$(top_builddir)/src/login-common/libdovecot-login.la'
LIBDOVECOT_LDA='$(top_builddir)/src/lib-lda/libdovecot-lda.la'
else
@@ -2517,14 +2520,16 @@
LIBDOVECOT="$LIBDOVECOT_DEPS \$(LIBICONV)"
LIBDOVECOT_STORAGE_LAST='$(top_builddir)/src/lib-storage/list/libstorage_list.la $(top_builddir)/src/lib-storage/index/libstorage_index.la $(top_builddir)/src/lib-storage/libstorage.la $(top_builddir)/src/lib-index/libindex.la'
LIBDOVECOT_STORAGE_FIRST='$(top_builddir)/src/lib-storage/libstorage_service.la $(top_builddir)/src/lib-storage/register/libstorage_register.la'
- LIBDOVECOT_STORAGE="$LIBDOVECOT_STORAGE_FIRST $LINKED_STORAGE_LIBS $LIBDOVECOT_STORAGE_LAST"
+ LIBDOVECOT_STORAGE_DEPS="$LIBDOVECOT_STORAGE_FIRST $LINKED_STORAGE_LIBS $LIBDOVECOT_STORAGE_LAST"
LIBDOVECOT_LOGIN='$(top_builddir)/src/login-common/liblogin.la $(top_builddir)/src/lib-ssl-iostream/libssl_iostream.la'
LIBDOVECOT_LDA='$(top_builddir)/src/lib-lda/liblda.la'
fi
+LIBDOVECOT_STORAGE="$LIBDOVECOT_STORAGE_DEPS $LINKED_STORAGE_LDADD"
LIBDOVECOT_SQL='$(top_builddir)/src/lib-sql/libsql.la'
AC_SUBST(LIBDOVECOT)
AC_SUBST(LIBDOVECOT_DEPS)
AC_SUBST(LIBDOVECOT_STORAGE)
+AC_SUBST(LIBDOVECOT_STORAGE_DEPS)
AC_SUBST(LIBDOVECOT_LOGIN)
AC_SUBST(LIBDOVECOT_SQL)
AC_SUBST(LIBDOVECOT_LDA)
@@ -2699,7 +2704,7 @@
dnl IDLE doesn't really belong to banner. It's there just to make Blackberries
dnl happy, because otherwise BIS server disables push email.
capability_banner="IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE"
-capability="$capability_banner SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS SEARCH=FUZZY SPECIAL-USE"
+capability="$capability_banner SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS SPECIAL-USE"
AC_DEFINE_UNQUOTED(CAPABILITY_STRING, "$capability", IMAP capabilities)
AC_DEFINE_UNQUOTED(CAPABILITY_BANNER_STRING, "$capability_banner", IMAP capabilities advertised in banner)
@@ -2787,6 +2792,9 @@
src/master/Makefile
src/pop3/Makefile
src/pop3-login/Makefile
+src/replication/Makefile
+src/replication/aggregator/Makefile
+src/replication/replicator/Makefile
src/ssl-params/Makefile
src/stats/Makefile
src/util/Makefile
@@ -2803,8 +2811,10 @@
src/plugins/listescape/Makefile
src/plugins/mail-log/Makefile
src/plugins/notify/Makefile
+src/plugins/pop3-migration/Makefile
src/plugins/quota/Makefile
src/plugins/imap-quota/Makefile
+src/plugins/replication/Makefile
src/plugins/snarf/Makefile
src/plugins/stats/Makefile
src/plugins/imap-stats/Makefile
diff -r 80688ab1ea3d -r fbb1ecb9b888 doc/example-config/conf.d/10-mail.conf
--- a/doc/example-config/conf.d/10-mail.conf Sat May 19 22:40:08 2012 +0300
+++ b/doc/example-config/conf.d/10-mail.conf Sun May 20 03:25:04 2012 +0300
@@ -97,6 +97,8 @@
# List the shared/ namespace only if there are visible shared mailboxes.
#list = children
#}
+# Should shared INBOX be visible as "shared/user" or "shared/user/INBOX"?
+#mail_shared_explicit_inbox = yes
# System user and group used to access mails. If you use multiple, userdb
# can override these by returning uid or gid fields. You can use either numbers
@@ -227,6 +229,10 @@
# some mailbox formats and/or operating systems.
#mail_prefetch_count = 0
+# How often to scan for stale temporary files and delete them (0 = never).
+# These should exist only after Dovecot dies in the middle of saving mails.
+#mail_temp_scan_interval = 1w
+
##
## Maildir-specific settings
##
diff -r 80688ab1ea3d -r fbb1ecb9b888 doc/example-config/conf.d/10-ssl.conf
--- a/doc/example-config/conf.d/10-ssl.conf Sat May 19 22:40:08 2012 +0300
+++ b/doc/example-config/conf.d/10-ssl.conf Sun May 20 03:25:04 2012 +0300
@@ -23,6 +23,9 @@
# followed by the matching CRL(s). (e.g. ssl_ca = </etc/ssl/certs/ca.pem)
#ssl_ca =
+# Require that CRL check succeeds for client certificates.
+#ssl_require_crl = yes
+
# Request client to send a certificate. If you also want to require it, set
# auth_ssl_require_client_cert=yes in auth section.
#ssl_verify_client_cert = no
diff -r 80688ab1ea3d -r fbb1ecb9b888 doc/example-config/conf.d/20-pop3.conf
--- a/doc/example-config/conf.d/20-pop3.conf Sat May 19 22:40:08 2012 +0300
+++ b/doc/example-config/conf.d/20-pop3.conf Sun May 20 03:25:04 2012 +0300
@@ -54,6 +54,11 @@
# won't change those UIDLs. Currently this works only with Maildir.
#pop3_save_uidl = no
+ # What to do about duplicate UIDLs if they exist?
+ # allow: Show duplicates to clients.
+ # rename: Append a temporary -2, -3, etc. counter after the UIDL.
+ #pop3_uidl_duplicates = allow
+
# POP3 logout format string:
# %i - total number of bytes read from client
# %o - total number of bytes sent to client
diff -r 80688ab1ea3d -r fbb1ecb9b888 doc/example-config/dovecot.conf
--- a/doc/example-config/dovecot.conf Sat May 19 22:40:08 2012 +0300
+++ b/doc/example-config/dovecot.conf Sun May 20 03:25:04 2012 +0300
@@ -46,6 +46,11 @@
# Sepace separated list of login access check sockets (e.g. tcpwrap)
#login_access_sockets =
More information about the dovecot-cvs
mailing list