summaryrefslogtreecommitdiff
path: root/mail/dovecot2
diff options
context:
space:
mode:
authoradam <adam@pkgsrc.org>2015-10-17 07:45:43 +0000
committeradam <adam@pkgsrc.org>2015-10-17 07:45:43 +0000
commit4dd9a1b2bacc454399ef7d70e6afe3a3fc3dcf7c (patch)
treee5a57c88484fe53825ed5976957cd58d1972b6a5 /mail/dovecot2
parentba0c1c610b3fef9dcc9176201c13bc4a3ce2821e (diff)
downloadpkgsrc-4dd9a1b2bacc454399ef7d70e6afe3a3fc3dcf7c.tar.gz
Changes 2.2.19:
* pop3_deleted_flag has been broken since v2.2.10. Using it would cause buffer overflows, which could be exploitable. However, this bug would have become visible quite soon after users had deleted some POP3 mails, because the pop3 processes would have started crashing all the time even in normal use. * "doveadm director flush" command has a changed meaning now: It safely moves users to their wanted backends, instead of simply forgetting the mapping entirely and leaving the existing connections untouched. Use -F parameter to get the original unsafe behavior. + Added imap-hibernate processes (see imap_hibernate_timeout setting). IDLEing IMAP connections can be hibernated, which saves memory. + Optimized tracking mailboxes' vsizes (= sum of all messages' sizes). If mailbox_list_index=yes, it's also stored in there. This makes it very efficient to look up vsizes for all mailboxes. + Added a quota "count" backend, which uses the mailbox vsizes to get the current quota usage. It requires using the new quota_vsizes=yes setting, which tracks the messages' "virtual sizes" rather than "physical sizes". Their distiction is minor and mostly irrelevant nowadays (if mail sizes should be counted with LF or CRLF newlines). + "doveadm director up/down" commands added. The monitoring script should be using these commands instead of changing the vhost count. This allows admin to manually disable a server by changing the vhost count to 0 without the monitoring script changing it back. + Added support for HAProxy protocol: http://wiki2.dovecot.org/HAProxy + Added push-notification plugin framework, which can be used to easily implement push notifications to various backends. Implemented "ox" backend for notifying Open-Xchange via HTTP/json. + imap_logout_format supports more variables now, e.g. number of deleted messages. + pop3: Added pop3_delete_type setting (related to pop3_deleted_flag). + plugin { fts_enforced=yes } setting now fails body searches unless it can be done via the full text search engine. + Added %{passdb:*} and %{userdb:*} variables to various places + auth: Added ":protected" suffix for passdb and userdb fields. If used, the field doesn't overwrite an existing field. + IMAP/POP3 proxy: If a backend server dies, avoid client reconnection spikes by slowly disconnecting clients over time. This is enabled by setting login_proxy_max_disconnect_delay=secs passdb extra field. + imap: Added new read-only METADATA entries: /private/specialuse, /shared/comment, /shared/admin + imap: If client disconnects in the middle of a command, log how long the command had been running. - mdbox: Rebuilding could have caused message's reference count to overflow the 16bit number in some situations, causing problems when trying to expunge the duplicates. - Various search fixes (fts, solr, tika, lib-charset, indexer) - Various virtual plugin fixes - Various fixes and optimizations to dsync, imapc and pop3-migration - imap: Various RFC compliancy and crash fixes to NOTIFY
Diffstat (limited to 'mail/dovecot2')
-rw-r--r--mail/dovecot2/Makefile5
-rw-r--r--mail/dovecot2/PLIST56
-rw-r--r--mail/dovecot2/buildlink3.mk4
-rw-r--r--mail/dovecot2/distinfo12
-rw-r--r--mail/dovecot2/patches/patch-src_lib_buffer.h10
-rw-r--r--mail/dovecot2/patches/patch-src_lib_sendfile-util.c19
6 files changed, 70 insertions, 36 deletions
diff --git a/mail/dovecot2/Makefile b/mail/dovecot2/Makefile
index 41b867df35a..49d1d57e0ae 100644
--- a/mail/dovecot2/Makefile
+++ b/mail/dovecot2/Makefile
@@ -1,11 +1,10 @@
-# $NetBSD: Makefile,v 1.79 2015/10/10 01:58:12 ryoon Exp $
+# $NetBSD: Makefile,v 1.80 2015/10/17 07:45:43 adam Exp $
#
# when updating to a new release, update ABI depends in
# the buildlink3.mk file as well, since the plugins' version
# must match (see PR 49563).
-DISTNAME= dovecot-2.2.18
-PKGREVISION= 3
+DISTNAME= dovecot-2.2.19
CATEGORIES= mail
MASTER_SITES= http://www.dovecot.org/releases/${PKGVERSION_NOREV:R}/
diff --git a/mail/dovecot2/PLIST b/mail/dovecot2/PLIST
index 085e028f649..f679539594d 100644
--- a/mail/dovecot2/PLIST
+++ b/mail/dovecot2/PLIST
@@ -1,9 +1,16 @@
-@comment $NetBSD: PLIST,v 1.40 2015/05/17 00:12:45 taca Exp $
+@comment $NetBSD: PLIST,v 1.41 2015/10/17 07:45:43 adam Exp $
bin/doveadm
bin/doveconf
bin/dsync
include/dovecot/abspath.h
include/dovecot/access-lookup.h
+include/dovecot/acl-api-private.h
+include/dovecot/acl-api.h
+include/dovecot/acl-cache.h
+include/dovecot/acl-global-file.h
+include/dovecot/acl-lookup-dict.h
+include/dovecot/acl-plugin.h
+include/dovecot/acl-storage.h
include/dovecot/anvil-client.h
include/dovecot/aqueue.h
include/dovecot/array-decl.h
@@ -22,6 +29,7 @@ include/dovecot/auth-master.h
include/dovecot/auth-penalty.h
include/dovecot/auth-postfix-connection.h
include/dovecot/auth-request-handler.h
+include/dovecot/auth-request-var-expand.h
include/dovecot/auth-request.h
include/dovecot/auth-server-connection.h
include/dovecot/auth-settings.h
@@ -95,6 +103,7 @@ include/dovecot/fdatasync-path.h
include/dovecot/fdpass.h
include/dovecot/file-cache.h
include/dovecot/file-copy.h
+include/dovecot/file-create-locked.h
include/dovecot/file-dotlock.h
include/dovecot/file-lock.h
include/dovecot/file-set-size.h
@@ -104,9 +113,17 @@ include/dovecot/fs-sis-common.h
include/dovecot/fsync-mode.h
include/dovecot/fts-api-private.h
include/dovecot/fts-api.h
+include/dovecot/fts-common.h
include/dovecot/fts-expunge-log.h
+include/dovecot/fts-filter-private.h
+include/dovecot/fts-filter.h
+include/dovecot/fts-icu.h
include/dovecot/fts-indexer.h
+include/dovecot/fts-language.h
include/dovecot/fts-parser.h
+include/dovecot/fts-tokenizer-generic-private.h
+include/dovecot/fts-tokenizer-private.h
+include/dovecot/fts-tokenizer.h
include/dovecot/fts-user.h
include/dovecot/guid.h
include/dovecot/hash-decl.h
@@ -150,6 +167,7 @@ include/dovecot/imap-fetch.h
include/dovecot/imap-id.h
include/dovecot/imap-keepalive.h
include/dovecot/imap-list.h
+include/dovecot/imap-master-client.h
include/dovecot/imap-match.h
include/dovecot/imap-metadata.h
include/dovecot/imap-msgpart-url.h
@@ -162,6 +180,7 @@ include/dovecot/imap-search-args.h
include/dovecot/imap-search.h
include/dovecot/imap-seqset.h
include/dovecot/imap-settings.h
+include/dovecot/imap-state.h
include/dovecot/imap-status.h
include/dovecot/imap-sync.h
include/dovecot/imap-url.h
@@ -185,6 +204,7 @@ include/dovecot/imapc-sync.h
include/dovecot/imem.h
include/dovecot/index-attachment.h
include/dovecot/index-mail.h
+include/dovecot/index-mailbox-size.h
include/dovecot/index-rebuild.h
include/dovecot/index-search-private.h
include/dovecot/index-search-result.h
@@ -206,6 +226,7 @@ include/dovecot/iostream-rawlog.h
include/dovecot/iostream-ssl-private.h
include/dovecot/iostream-ssl.h
include/dovecot/iostream-temp.h
+include/dovecot/iostream.h
include/dovecot/ipc-client.h
include/dovecot/ipc-server.h
include/dovecot/ipwd.h
@@ -219,8 +240,10 @@ include/dovecot/istream-chain.h
include/dovecot/istream-concat.h
include/dovecot/istream-crlf.h
include/dovecot/istream-dot.h
+include/dovecot/istream-failure-at.h
include/dovecot/istream-file-private.h
include/dovecot/istream-fs-file.h
+include/dovecot/istream-fs-stats.h
include/dovecot/istream-hash.h
include/dovecot/istream-header-filter.h
include/dovecot/istream-jsonstr.h
@@ -284,6 +307,7 @@ include/dovecot/mail-transaction-log.h
include/dovecot/mail-types.h
include/dovecot/mail-user-hash.h
include/dovecot/mail-user.h
+include/dovecot/mailbox-attribute-internal.h
include/dovecot/mailbox-attribute-private.h
include/dovecot/mailbox-attribute.h
include/dovecot/mailbox-guid-cache.h
@@ -300,9 +324,11 @@ include/dovecot/mailbox-list-private.h
include/dovecot/mailbox-list-subscriptions.h
include/dovecot/mailbox-list.h
include/dovecot/mailbox-log.h
+include/dovecot/mailbox-recent-flags.h
include/dovecot/mailbox-search-result-private.h
include/dovecot/mailbox-tree.h
include/dovecot/mailbox-uidvalidity.h
+include/dovecot/mailbox-watch.h
include/dovecot/maildir-filename-flags.h
include/dovecot/maildir-filename.h
include/dovecot/maildir-keywords.h
@@ -369,6 +395,7 @@ include/dovecot/notify-plugin.h
include/dovecot/numpack.h
include/dovecot/ostream-cmp.h
include/dovecot/ostream-dot.h
+include/dovecot/ostream-failure-at.h
include/dovecot/ostream-hash.h
include/dovecot/ostream-metawrap.h
include/dovecot/ostream-private.h
@@ -393,6 +420,26 @@ include/dovecot/primes.h
include/dovecot/printf-format-fix.h
include/dovecot/priorityq.h
include/dovecot/process-title.h
+include/dovecot/push-notification-drivers.h
+include/dovecot/push-notification-event-flagsclear.h
+include/dovecot/push-notification-event-flagsset.h
+include/dovecot/push-notification-event-mailboxcreate.h
+include/dovecot/push-notification-event-mailboxdelete.h
+include/dovecot/push-notification-event-mailboxrename.h
+include/dovecot/push-notification-event-mailboxsubscribe.h
+include/dovecot/push-notification-event-mailboxunsubscribe.h
+include/dovecot/push-notification-event-message-common.h
+include/dovecot/push-notification-event-messageappend.h
+include/dovecot/push-notification-event-messageexpunge.h
+include/dovecot/push-notification-event-messagenew.h
+include/dovecot/push-notification-event-messageread.h
+include/dovecot/push-notification-event-messagetrash.h
+include/dovecot/push-notification-events-rfc5423.h
+include/dovecot/push-notification-events.h
+include/dovecot/push-notification-plugin.h
+include/dovecot/push-notification-triggers.h
+include/dovecot/push-notification-txn-mbox.h
+include/dovecot/push-notification-txn-msg.h
include/dovecot/qp-decoder.h
include/dovecot/quota-fs.h
include/dovecot/quota-plugin.h
@@ -424,6 +471,7 @@ include/dovecot/sha1.h
include/dovecot/sha2.h
include/dovecot/shared-storage.h
include/dovecot/smtp-client.h
+include/dovecot/sort.h
include/dovecot/sql-api-private.h
include/dovecot/sql-api.h
include/dovecot/sql-db-cache.h
@@ -441,6 +489,7 @@ include/dovecot/subscription-file.h
include/dovecot/syslog-util.h
include/dovecot/test-common.h
include/dovecot/time-util.h
+include/dovecot/timing.h
include/dovecot/unichar.h
include/dovecot/unix-socket-create.h
include/dovecot/unlink-directory.h
@@ -478,6 +527,7 @@ lib/dovecot/lib20_fts_plugin.la
lib/dovecot/lib20_listescape_plugin.la
lib/dovecot/lib20_mail_log_plugin.la
lib/dovecot/lib20_mailbox_alias_plugin.la
+lib/dovecot/lib20_push_notification_plugin.la
lib/dovecot/lib20_quota_clone_plugin.la
lib/dovecot/lib20_replication_plugin.la
lib/dovecot/lib20_virtual_plugin.la
@@ -510,6 +560,7 @@ libexec/dovecot/doveadm-server
libexec/dovecot/dovecot-lda
libexec/dovecot/gdbhelper
libexec/dovecot/imap
+libexec/dovecot/imap-hibernate
libexec/dovecot/imap-login
libexec/dovecot/imap-urlauth
libexec/dovecot/imap-urlauth-login
@@ -656,6 +707,7 @@ share/doc/dovecot/wiki/DomainLost.txt
share/doc/dovecot/wiki/Errors.ChgrpNoPerm.txt
share/doc/dovecot/wiki/FindMailLocation.txt
share/doc/dovecot/wiki/FinishBasicConfiguration.txt
+share/doc/dovecot/wiki/HAProxy.txt
share/doc/dovecot/wiki/HowTo.EximAndDovecotSASL.txt
share/doc/dovecot/wiki/HowTo.ImapcProxy.txt
share/doc/dovecot/wiki/HowTo.PopBSMTPAndDovecot.txt
@@ -664,6 +716,8 @@ share/doc/dovecot/wiki/HowTo.PostfixAndDovecotSASL.txt
share/doc/dovecot/wiki/HowTo.Rootless.txt
share/doc/dovecot/wiki/HowTo.SimpleVirtualInstall.txt
share/doc/dovecot/wiki/HowTo.txt
+share/doc/dovecot/wiki/IMAPServer.txt
+share/doc/dovecot/wiki/ImapMetadata.txt
share/doc/dovecot/wiki/IndexFiles.txt
share/doc/dovecot/wiki/LDA.Exim.txt
share/doc/dovecot/wiki/LDA.Indexing.txt
diff --git a/mail/dovecot2/buildlink3.mk b/mail/dovecot2/buildlink3.mk
index 81f0e975efd..ef2884fe913 100644
--- a/mail/dovecot2/buildlink3.mk
+++ b/mail/dovecot2/buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.12 2015/08/23 14:30:35 wiz Exp $
+# $NetBSD: buildlink3.mk,v 1.13 2015/10/17 07:45:43 adam Exp $
BUILDLINK_TREE+= dovecot
@@ -7,7 +7,7 @@ DOVECOT_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.dovecot+= dovecot>=2.2.0
# must match current package version for plugins to load
-BUILDLINK_ABI_DEPENDS.dovecot+= dovecot>=2.2.18nb1
+BUILDLINK_ABI_DEPENDS.dovecot+= dovecot>=2.2.19
BUILDLINK_PKGSRCDIR.dovecot?= ../../mail/dovecot2
pkgbase:= dovecot
diff --git a/mail/dovecot2/distinfo b/mail/dovecot2/distinfo
index 46de8f7d344..83a97456565 100644
--- a/mail/dovecot2/distinfo
+++ b/mail/dovecot2/distinfo
@@ -1,12 +1,12 @@
-$NetBSD: distinfo,v 1.57 2015/09/23 11:58:56 joerg Exp $
+$NetBSD: distinfo,v 1.58 2015/10/17 07:45:43 adam Exp $
-SHA1 (dovecot-2.2.18.tar.gz) = 8309b5ef8d33d464eb7a6e1d3cba0b4e87c55eff
-RMD160 (dovecot-2.2.18.tar.gz) = 847ca54f76210d0f06b1471bee62d6fcdc7b02c7
-Size (dovecot-2.2.18.tar.gz) = 5100040 bytes
+SHA1 (dovecot-2.2.19.tar.gz) = cc748b72478d1670997ebb0796fd68f3f2d546be
+RMD160 (dovecot-2.2.19.tar.gz) = cb21bccf69c17e4188dc2834fb9ae11d42c638b8
+SHA512 (dovecot-2.2.19.tar.gz) = 1b9d605a6a5862ade9d1ca634a9e0171b7c212ab025fc2059051c3795470685b66516fa9fbe5ad91d84388268ea15795f2dcd70ffdf81736ce4d80fd284835e9
+Size (dovecot-2.2.19.tar.gz) = 5256627 bytes
SHA1 (patch-aa) = ea185011f0c1ee3aa1ff528e61f6f356fe385666
SHA1 (patch-ab) = d637a64feec8e4eafacda149cf0193aa1b70a054
SHA1 (patch-ae) = 51d8cb998cc2ded8bfc767710e465b752c50e656
SHA1 (patch-af) = c066e94dd6593d16eec3e66f5f4d26f021918498
-SHA1 (patch-src_lib_buffer.h) = e8b5cf89f7183f05403ef49512b23ac7f20b6b73
-SHA1 (patch-src_lib_sendfile-util.c) = 6ed7c42aa84afce2d5eee9e405f9d15ec6fdbce9
+SHA1 (patch-src_lib_buffer.h) = d75017a1093c1ca34827d01ec85b06e6b03105d2
SHA1 (patch-src_stats_mail-stats.h) = 90645c2aab956a0119630da4b71905db704bffda
diff --git a/mail/dovecot2/patches/patch-src_lib_buffer.h b/mail/dovecot2/patches/patch-src_lib_buffer.h
index 620af77336c..863ebf44c08 100644
--- a/mail/dovecot2/patches/patch-src_lib_buffer.h
+++ b/mail/dovecot2/patches/patch-src_lib_buffer.h
@@ -1,13 +1,13 @@
-$NetBSD: patch-src_lib_buffer.h,v 1.1 2015/09/23 11:58:56 joerg Exp $
+$NetBSD: patch-src_lib_buffer.h,v 1.2 2015/10/17 07:45:43 adam Exp $
---- src/lib/buffer.h.orig 2015-09-22 21:27:02.000000000 +0000
+--- src/lib/buffer.h.orig 2015-09-24 17:30:28.000000000 +0000
+++ src/lib/buffer.h
@@ -20,7 +20,7 @@ void buffer_create_from_const_data(buffe
const void *data, size_t size);
#if defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__) > 401
#define buffer_create_from_data(b,d,s) ({ \
-- (void)COMPILE_ERROR_IF_TRUE(__builtin_object_size((d),3) < ((s)?(s):1)); \
-+ (void)COMPILE_ERROR_IF_TRUE(__builtin_object_size((d),3) != 0 && __builtin_object_size((d),3) < ((s)?(s):1)); \
+- (void)COMPILE_ERROR_IF_TRUE(__builtin_object_size((d),1) < ((s)?(s):1)); \
++ (void)COMPILE_ERROR_IF_TRUE(__builtin_object_size((d),1) != 0 && __builtin_object_size((d),1) < ((s)?(s):1)); \
buffer_create_from_data((b), (d), (s)); })
#define buffer_create_from_const_data(b,d,s) ({ \
- (void)COMPILE_ERROR_IF_TRUE(__builtin_object_size((d),3) < ((s)?(s):1)); \
+ (void)COMPILE_ERROR_IF_TRUE(__builtin_object_size((d),1) < ((s)?(s):1)); \
diff --git a/mail/dovecot2/patches/patch-src_lib_sendfile-util.c b/mail/dovecot2/patches/patch-src_lib_sendfile-util.c
deleted file mode 100644
index 3ac9bd0ec80..00000000000
--- a/mail/dovecot2/patches/patch-src_lib_sendfile-util.c
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD: patch-src_lib_sendfile-util.c,v 1.1 2015/09/04 18:49:36 wiedi Exp $
-
-The call to sendfile on SmartOS can fail with EOPNOTSUPP. This is a valid error
-code and documented in the man page. This error code needs to be handled or
-else dovecot will retry the sendfile call endlessly and hang.
-
-This patch has been proposed upstream.
-
---- src/lib/sendfile-util.c.orig 2015-01-05 20:20:07.000000000 +0000
-+++ src/lib/sendfile-util.c
-@@ -116,7 +116,7 @@ ssize_t safe_sendfile(int out_fd, int in
- if (errno == EINVAL) {
- /* most likely trying to read past EOF */
- ret = 0;
-- } else if (errno == EAFNOSUPPORT) {
-+ } else if (errno == EAFNOSUPPORT || errno == EOPNOTSUPP) {
- /* not supported, return Linux-like EINVAL so caller
- sees only consistent errnos. */
- errno = EINVAL;