From 6cea2a768cfb0bcc87a7fde4dac85cd3a031be36 Mon Sep 17 00:00:00 2001 From: adamw Date: Sat, 3 Dec 2016 18:31:35 +0000 Subject: Update dovecot2 to 2.2.27, and bump PORTREVISION on pigeonhole and antispam-plugin. Also, while here, switch the MASTER_SITE to https, because https. The big thing in this release is the ability to read and write encrypted messages. I'm very interested in hearing FreeBSD users' experiences with it. Really, Larry Rosenman did almost all the actual work here. * dovecot.list.index.log rotation sizes/times were changed so that the .log file stays smaller and .log.2 is deleted sooner. + Added mail_crypt plugin that allows encryption of stored emails. See http://wiki2.dovecot.org/Plugins/MailCrypt + stats: Global stats can be sent to Carbon server by setting stats_carbon_server=ip:port + imap/pop3 proxy: If passdb returns proxy_not_trusted, don't send ID/XCLIENT + Added generic hash modifier for %variables: %{;rounds=,truncate=,salt=s>:field} Hash algorithm is any of the supported ones, e.g. md5, sha1, sha256. Also "pkcs5" is supported using SHA256. For example: %{sha256:user} or %{md5;truncate=32:user}. + Added support for SHA3-256 and SHA3-512 hashes. + config: Support DNS wildcards in local_name, e.g. local_name *.example.com { .. } matches anything.example.com, but not multiple.anything.example.com. + config: Support multiple names in local_name, e.g. local_name "1.example.com 2.example.com" { .. } - Fixed crash in auth process when auth-policy was configured and authentication was aborted/failed without a username set. - director: If two users had different tags but the same hash, the users may have been redirected to the wrong tag's hosts. - Index files may have been thought incorrectly lost, causing "Missing middle file seq=.." to be logged and index rebuild. This happened more easily with IMAP hibernation enabled. - Various fixes to restoring state correctly in un-hibernation. - dovecot.index files were commonly 4 bytes per email too large. This is because 3 bytes per email were being wasted that could have been used for IMAP keywords. - Various fixes to handle dovecot.list.index corruption better. - lib-fts: Fixed assert-crash in address tokenizer with specific input. - Fixed assert-crash in HTML to text parsing with specific input (e.g. for FTS indexing or snippet generation) - doveadm sync -1: Fixed handling mailbox GUID conflicts. - sdbox, mdbox: Perform full index rebuild if corruption is detected inside lib-index, which runs index fsck. - quota: Don't skip quota checks when moving mails between different quota roots. - search: Multiple sequence sets or UID sets in search parameters weren't handled correctly. They were incorrectly merged together --- mail/dovecot2-antispam-plugin/Makefile | 2 +- mail/dovecot2-pigeonhole/Makefile | 2 +- mail/dovecot2/Makefile | 4 ++-- mail/dovecot2/distinfo | 6 +++--- .../files/patch-src_lib-http_http-client-request.c | 22 ---------------------- ...h-src_lib-ssl-iostream_dovecot-openssl-common.c | 13 +++++++++++++ mail/dovecot2/pkg-plist | 14 ++++++++++++++ 7 files changed, 34 insertions(+), 29 deletions(-) delete mode 100644 mail/dovecot2/files/patch-src_lib-http_http-client-request.c create mode 100644 mail/dovecot2/files/patch-src_lib-ssl-iostream_dovecot-openssl-common.c (limited to 'mail') diff --git a/mail/dovecot2-antispam-plugin/Makefile b/mail/dovecot2-antispam-plugin/Makefile index 135a57425e87..ac3ac4a089a5 100644 --- a/mail/dovecot2-antispam-plugin/Makefile +++ b/mail/dovecot2-antispam-plugin/Makefile @@ -3,7 +3,7 @@ PORTNAME= dovecot2-antispam-plugin PORTVERSION= 20130429 -PORTREVISION= 23 +PORTREVISION= 24 CATEGORIES= mail MASTER_SITES= http://olgeni.olgeni.com/~olgeni/distfiles/ \ LOCAL/olgeni diff --git a/mail/dovecot2-pigeonhole/Makefile b/mail/dovecot2-pigeonhole/Makefile index b462cdc86c98..5c00e5418abc 100644 --- a/mail/dovecot2-pigeonhole/Makefile +++ b/mail/dovecot2-pigeonhole/Makefile @@ -3,7 +3,7 @@ PORTNAME= dovecot-pigeonhole PORTVERSION= 0.4.16 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= mail MASTER_SITES= http://pigeonhole.dovecot.org/releases/${DOVECOTVERSION}/ DISTNAME= ${PORTNAME:C/-/-${DOVECOTVERSION}-/}-${PORTVERSION} diff --git a/mail/dovecot2/Makefile b/mail/dovecot2/Makefile index e2a30e339143..c8de14bdca52 100644 --- a/mail/dovecot2/Makefile +++ b/mail/dovecot2/Makefile @@ -13,10 +13,10 @@ ###################################################################### PORTNAME= dovecot -PORTVERSION= 2.2.26.0 +PORTVERSION= 2.2.27 PORTREVISION= 4 CATEGORIES= mail ipv6 -MASTER_SITES= http://www.dovecot.org/releases/${PORTVERSION:R:R}/ +MASTER_SITES= https://www.dovecot.org/releases/${PORTVERSION:R}/ PKGNAMESUFFIX= 2 MAINTAINER= adamw@FreeBSD.org diff --git a/mail/dovecot2/distinfo b/mail/dovecot2/distinfo index b5c135b42d89..9cba396e4d36 100644 --- a/mail/dovecot2/distinfo +++ b/mail/dovecot2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1477674340 -SHA256 (dovecot-2.2.26.0.tar.gz) = f692a1f39de36cd15f6681f7fee5fba2ef3e72b529acbee02b23422e16926f05 -SIZE (dovecot-2.2.26.0.tar.gz) = 5687576 +TIMESTAMP = 1480788212 +SHA256 (dovecot-2.2.27.tar.gz) = 897f92a87cda4b27b243f8149ce0ba7b7e71a2be8fb7994eb0a025e54cde18e9 +SIZE (dovecot-2.2.27.tar.gz) = 5794668 diff --git a/mail/dovecot2/files/patch-src_lib-http_http-client-request.c b/mail/dovecot2/files/patch-src_lib-http_http-client-request.c deleted file mode 100644 index 00ed2253e804..000000000000 --- a/mail/dovecot2/files/patch-src_lib-http_http-client-request.c +++ /dev/null @@ -1,22 +0,0 @@ ---- src/lib-http/http-client-request.c.orig 2016-10-27 12:26:28 UTC -+++ src/lib-http/http-client-request.c -@@ -786,10 +786,16 @@ int http_client_request_send_payload(str - i_assert(data != NULL); - - ret = http_client_request_continue_payload(&req, data, size); -- if (ret < 0) -+ if (ret < 0) { -+ /* failed to send payload */ - *_req = NULL; -- else { -- i_assert(ret == 0); -+ } else if (ret > 0) { -+ /* premature end of request; -+ server sent error before all payload could be sent */ -+ ret = -1; -+ *_req = NULL; -+ } else { -+ /* not finished sending payload */ - i_assert(req != NULL); - } - return ret; diff --git a/mail/dovecot2/files/patch-src_lib-ssl-iostream_dovecot-openssl-common.c b/mail/dovecot2/files/patch-src_lib-ssl-iostream_dovecot-openssl-common.c new file mode 100644 index 000000000000..9478bcf38531 --- /dev/null +++ b/mail/dovecot2/files/patch-src_lib-ssl-iostream_dovecot-openssl-common.c @@ -0,0 +1,13 @@ +This fixes building against LibreSSL. + +--- src/lib-ssl-iostream/dovecot-openssl-common.c.orig 2016-12-03 18:13:25 UTC ++++ src/lib-ssl-iostream/dovecot-openssl-common.c +@@ -101,7 +101,7 @@ bool dovecot_openssl_common_global_unref + ERR_remove_thread_state(NULL); + #endif + ERR_free_strings(); +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + OPENSSL_cleanup(); + #endif + return FALSE; diff --git a/mail/dovecot2/pkg-plist b/mail/dovecot2/pkg-plist index 7f9d7a811e99..9761ff61d41c 100644 --- a/mail/dovecot2/pkg-plist +++ b/mail/dovecot2/pkg-plist @@ -110,6 +110,7 @@ include/dovecot/dict-sql.h include/dovecot/dict-transaction-memory.h include/dovecot/dict.h include/dovecot/dns-lookup.h +include/dovecot/dns-util.h include/dovecot/doveadm-cmd.h include/dovecot/doveadm-dsync.h include/dovecot/doveadm-dump.h @@ -522,8 +523,10 @@ include/dovecot/seq-range-array.h include/dovecot/service-settings.h include/dovecot/settings-parser.h include/dovecot/settings.h +include/dovecot/sha-common.h include/dovecot/sha1.h include/dovecot/sha2.h +include/dovecot/sha3.h include/dovecot/shared-storage.h include/dovecot/smtp-client.h include/dovecot/sort.h @@ -570,6 +573,8 @@ lib/dovecot/doveadm/lib10_doveadm_quota_plugin.a lib/dovecot/doveadm/lib10_doveadm_quota_plugin.so lib/dovecot/doveadm/lib20_doveadm_fts_plugin.a lib/dovecot/doveadm/lib20_doveadm_fts_plugin.so +lib/dovecot/doveadm/libdoveadm_mail_crypt_plugin.a +lib/dovecot/doveadm/libdoveadm_mail_crypt_plugin.so lib/dovecot/dovecot-config lib/dovecot/lib01_acl_plugin.a lib/dovecot/lib01_acl_plugin.so @@ -577,12 +582,16 @@ lib/dovecot/lib02_imap_acl_plugin.a lib/dovecot/lib02_imap_acl_plugin.so lib/dovecot/lib02_lazy_expunge_plugin.a lib/dovecot/lib02_lazy_expunge_plugin.so +lib/dovecot/lib05_mail_crypt_acl_plugin.a +lib/dovecot/lib05_mail_crypt_acl_plugin.so lib/dovecot/lib05_pop3_migration_plugin.a lib/dovecot/lib05_pop3_migration_plugin.so lib/dovecot/lib05_snarf_plugin.a lib/dovecot/lib05_snarf_plugin.so lib/dovecot/lib10_last_login_plugin.a lib/dovecot/lib10_last_login_plugin.so +lib/dovecot/lib10_mail_crypt_plugin.a +lib/dovecot/lib10_mail_crypt_plugin.so lib/dovecot/lib10_mail_filter_plugin.a lib/dovecot/lib10_mail_filter_plugin.so lib/dovecot/lib10_quota_plugin.a @@ -660,6 +669,10 @@ lib/dovecot/libdovecot.so.0 lib/dovecot/libdovecot.so.0.0.0 lib/dovecot/libfs_compress.a lib/dovecot/libfs_compress.so +lib/dovecot/libfs_crypt.a +lib/dovecot/libfs_crypt.so +lib/dovecot/libfs_mail_crypt.a +lib/dovecot/libfs_mail_crypt.so lib/dovecot/stats/libstats_auth.a lib/dovecot/stats/libstats_auth.so lib/dovecot/stats/libstats_mail.a @@ -723,6 +736,7 @@ man/man1/doveadm-index.1.gz man/man1/doveadm-instance.1.gz man/man1/doveadm-kick.1.gz man/man1/doveadm-log.1.gz +man/man1/doveadm-mailbox-cryptokey.1.gz man/man1/doveadm-mailbox.1.gz man/man1/doveadm-mount.1.gz man/man1/doveadm-move.1.gz -- cgit