diff options
author | ghen <ghen@pkgsrc.org> | 2012-04-10 12:12:21 +0000 |
---|---|---|
committer | ghen <ghen@pkgsrc.org> | 2012-04-10 12:12:21 +0000 |
commit | c5d29d5d32a7eb651cc751c6cf53b287404f863d (patch) | |
tree | 891367d8d2f5d26e0cf7ed35f2987f189b0ab09c /mail | |
parent | 3553902619dc535e329eccfb1756f5a5674d523a (diff) | |
download | pkgsrc-c5d29d5d32a7eb651cc751c6cf53b287404f863d.tar.gz |
Update to Dovecot 2.1.4.
+ 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.
Diffstat (limited to 'mail')
-rw-r--r-- | mail/dovecot2/Makefile | 5 | ||||
-rw-r--r-- | mail/dovecot2/PLIST | 4 | ||||
-rw-r--r-- | mail/dovecot2/distinfo | 9 | ||||
-rw-r--r-- | mail/dovecot2/patches/patch-src_lib-storage_list_mailbox-list-fs-iter.c | 104 |
4 files changed, 9 insertions, 113 deletions
diff --git a/mail/dovecot2/Makefile b/mail/dovecot2/Makefile index d3af8382176..c64ef63990c 100644 --- a/mail/dovecot2/Makefile +++ b/mail/dovecot2/Makefile @@ -1,7 +1,6 @@ -# $NetBSD: Makefile,v 1.20 2012/04/06 15:56:26 tron Exp $ +# $NetBSD: Makefile,v 1.21 2012/04/10 12:12:21 ghen Exp $ -DISTNAME= dovecot-2.1.3 -PKGREVISION= 1 +DISTNAME= dovecot-2.1.4 CATEGORIES= mail MASTER_SITES= http://www.dovecot.org/releases/2.1/ diff --git a/mail/dovecot2/PLIST b/mail/dovecot2/PLIST index 9fbed4d41ef..d9381eeb769 100644 --- a/mail/dovecot2/PLIST +++ b/mail/dovecot2/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.12 2012/03/17 02:14:15 ghen Exp $ +@comment $NetBSD: PLIST,v 1.13 2012/04/10 12:12:21 ghen Exp $ bin/doveadm bin/doveconf bin/dsync @@ -360,6 +360,7 @@ lib/dovecot/dovecot-config lib/dovecot/lib01_acl_plugin.la lib/dovecot/lib02_imap_acl_plugin.la lib/dovecot/lib02_lazy_expunge_plugin.la +lib/dovecot/lib05_pop3_migration_plugin.la lib/dovecot/lib05_snarf_plugin.la lib/dovecot/lib10_quota_plugin.la lib/dovecot/lib11_imap_quota_plugin.la @@ -559,6 +560,7 @@ share/doc/dovecot/wiki/MboxProblems.txt share/doc/dovecot/wiki/Migration.BincIMAP.txt share/doc/dovecot/wiki/Migration.Courier.txt share/doc/dovecot/wiki/Migration.Cyrus.txt +share/doc/dovecot/wiki/Migration.Dsync.txt share/doc/dovecot/wiki/Migration.Linuxconf.txt share/doc/dovecot/wiki/Migration.MailFormat.txt share/doc/dovecot/wiki/Migration.Online.txt diff --git a/mail/dovecot2/distinfo b/mail/dovecot2/distinfo index e27b488f5b9..1b14dd14b10 100644 --- a/mail/dovecot2/distinfo +++ b/mail/dovecot2/distinfo @@ -1,8 +1,8 @@ -$NetBSD: distinfo,v 1.18 2012/04/06 15:56:26 tron Exp $ +$NetBSD: distinfo,v 1.19 2012/04/10 12:12:21 ghen Exp $ -SHA1 (dovecot-2.1.3.tar.gz) = b11d9dc3e058c291243e75d9cfda86241cf65f8a -RMD160 (dovecot-2.1.3.tar.gz) = c5130de9737ee93fba896e02a7dba9725e4176c7 -Size (dovecot-2.1.3.tar.gz) = 3724550 bytes +SHA1 (dovecot-2.1.4.tar.gz) = fcb706f430bcc9d50575edb9ab302f470d8e75f7 +RMD160 (dovecot-2.1.4.tar.gz) = b5df814f3aca6611a571a3ae16a8323be76128ea +Size (dovecot-2.1.4.tar.gz) = 3748512 bytes SHA1 (patch-aa) = 882f0c9fcf3acdfd2feaf7919309f770324f9843 SHA1 (patch-ab) = 218948585c96492a832ea903f31a6f9ad9fc69f0 SHA1 (patch-ac) = dc5db4870b14bf2424f0c957f5cf7f1a289fefe6 @@ -10,4 +10,3 @@ SHA1 (patch-ae) = 51d8cb998cc2ded8bfc767710e465b752c50e656 SHA1 (patch-af) = 6d4b339898cba762243c1ff415e0fd09e3dec750 SHA1 (patch-aj) = 9e7970d29d11c097b9588ad16611f6d0e48235c2 SHA1 (patch-ak) = ca4edaa46472a0cb609cea4d06893c7bd1312f54 -SHA1 (patch-src_lib-storage_list_mailbox-list-fs-iter.c) = ec4a21ff3b357e6e97a2ab40491f90cbfa2e3144 diff --git a/mail/dovecot2/patches/patch-src_lib-storage_list_mailbox-list-fs-iter.c b/mail/dovecot2/patches/patch-src_lib-storage_list_mailbox-list-fs-iter.c deleted file mode 100644 index d0362e4f311..00000000000 --- a/mail/dovecot2/patches/patch-src_lib-storage_list_mailbox-list-fs-iter.c +++ /dev/null @@ -1,104 +0,0 @@ -$NetBSD: patch-src_lib-storage_list_mailbox-list-fs-iter.c,v 1.1 2012/04/06 15:56:27 tron Exp $ - -Fix crash triggered by certain IMAP clients e.g. an Apple iPad. -Patch taken from here: - -http://hg.dovecot.org/dovecot-2.1/rev/c77fbfce438d - ---- src/lib-storage/list/mailbox-list-fs-iter.c.orig 2012-03-14 14:22:50.000000000 +0000 -+++ src/lib-storage/list/mailbox-list-fs-iter.c 2012-04-06 16:35:15.000000000 +0100 -@@ -85,6 +85,33 @@ - return 0; - } - -+static void -+fs_list_rename_invalid(struct fs_list_iterate_context *ctx, -+ const char *storage_name) -+{ -+ /* the storage_name is completely invalid, rename it to -+ something more sensible. we could do this for all names that -+ aren't valid mUTF-7, but that might lead to accidents in -+ future when UTF-8 storage names are used */ -+ string_t *destname = t_str_new(128); -+ string_t *dest = t_str_new(128); -+ const char *root, *src; -+ -+ root = mailbox_list_get_path(ctx->ctx.list, NULL, -+ MAILBOX_LIST_PATH_TYPE_MAILBOX); -+ src = t_strconcat(root, "/", storage_name, NULL); -+ -+ (void)uni_utf8_get_valid_data((const void *)storage_name, -+ strlen(storage_name), destname); -+ -+ str_append(dest, root); -+ str_append_c(dest, '/'); -+ (void)imap_utf8_to_utf7(str_c(destname), dest); -+ -+ if (rename(src, str_c(dest)) < 0 && errno != ENOENT) -+ i_error("rename(%s, %s) failed: %m", src, str_c(dest)); -+} -+ - static int - dir_entry_get(struct fs_list_iterate_context *ctx, const char *dir_path, - struct list_dir_context *dir, const struct dirent *d) -@@ -120,6 +147,13 @@ - storage_name = *dir->storage_name == '\0' ? d->d_name : - t_strconcat(dir->storage_name, "/", d->d_name, NULL); - vname = mailbox_list_get_vname(ctx->ctx.list, storage_name); -+ if (!uni_utf8_str_is_valid(vname)) { -+ fs_list_rename_invalid(ctx, storage_name); -+ /* just skip this in this iteration, we'll see it on the -+ next list */ -+ return 0; -+ } -+ - match = imap_match(ctx->ctx.glob, vname); - - if ((dir->info_flags & (MAILBOX_CHILDREN | MAILBOX_NOCHILDREN | -@@ -512,33 +546,6 @@ - return strcmp(path, inbox_path) == 0; - } - --static void --fs_list_rename_invalid(struct fs_list_iterate_context *ctx, -- const char *storage_name) --{ -- /* the storage_name is completely invalid, rename it to -- something more sensible. we could do this for all names that -- aren't valid mUTF-7, but that might lead to accidents in -- future when UTF-8 storage names are used */ -- string_t *destname = t_str_new(128); -- string_t *dest = t_str_new(128); -- const char *root, *src; -- -- root = mailbox_list_get_path(ctx->ctx.list, NULL, -- MAILBOX_LIST_PATH_TYPE_MAILBOX); -- src = t_strconcat(root, "/", storage_name, NULL); -- -- (void)uni_utf8_get_valid_data((const void *)storage_name, -- strlen(storage_name), destname); -- -- str_append(dest, root); -- str_append_c(dest, '/'); -- (void)imap_utf8_to_utf7(str_c(destname), dest); -- -- if (rename(src, str_c(dest)) < 0 && errno != ENOENT) -- i_error("rename(%s, %s) failed: %m", src, str_c(dest)); --} -- - static int - fs_list_entry(struct fs_list_iterate_context *ctx, - const struct list_dir_entry *entry) -@@ -553,12 +560,6 @@ - t_strconcat(dir->storage_name, "/", entry->fname, NULL); - - vname = mailbox_list_get_vname(ctx->ctx.list, storage_name); -- if (!uni_utf8_str_is_valid(vname)) { -- fs_list_rename_invalid(ctx, storage_name); -- /* just skip this in this iteration, we'll see it on the -- next list */ -- return 0; -- } - ctx->info.name = p_strdup(ctx->info_pool, vname); - ctx->info.flags = entry->info_flags; - |