update to 1.2.15, from Brad
This commit is contained in:
parent
4232331b71
commit
07d16451ad
@ -1,4 +1,4 @@
|
||||
# $OpenBSD: Makefile,v 1.149 2010/09/17 22:00:18 sthen Exp $
|
||||
# $OpenBSD: Makefile,v 1.150 2010/10/03 23:25:52 sthen Exp $
|
||||
|
||||
SHARED_ONLY= Yes
|
||||
|
||||
@ -6,15 +6,14 @@ COMMENT-server= compact IMAP/POP3 server
|
||||
COMMENT-sieve= Sieve mail filtering for Dovecot
|
||||
|
||||
V_MAJOR= 1.2
|
||||
V_DOVECOT= 1.2.14
|
||||
V_DOVECOT= 1.2.15
|
||||
V_SIEVE= 0.1.17
|
||||
V_MANAGESIEVE= 0.11.11
|
||||
|
||||
PKGNAME= dovecot-${V_DOVECOT}
|
||||
PKGNAME-server= dovecot-${V_DOVECOT}
|
||||
REVISION-server=1
|
||||
FULLPKGNAME-sieve= dovecot-sieve-${V_SIEVE}
|
||||
REVISION-sieve= 3
|
||||
REVISION-sieve= 4
|
||||
EPOCH-sieve= 0
|
||||
FULLPKGPATH-sieve= ${PKGPATH},-sieve
|
||||
|
||||
@ -28,7 +27,7 @@ DISTFILES= dovecot-${V_DOVECOT}.tar.gz \
|
||||
dovecot-${V_MAJOR}-managesieve-${V_MANAGESIEVE}.tar.gz:0 \
|
||||
${DIST_MANAGESIEVE}:0
|
||||
|
||||
DIST_MANAGESIEVE= dovecot-${V_DOVECOT}-managesieve-${V_MANAGESIEVE}.diff.gz
|
||||
DIST_MANAGESIEVE= dovecot-1.2.14-managesieve-${V_MANAGESIEVE}.diff.gz
|
||||
|
||||
HOMEPAGE= http://www.dovecot.org/
|
||||
|
||||
|
@ -1,20 +1,20 @@
|
||||
MD5 (dovecot-1.2-managesieve-0.11.11.tar.gz) = MrqNR6NpX4UUvSwr9zSPlg==
|
||||
MD5 (dovecot-1.2-sieve-0.1.17.tar.gz) = uheooIOG6ycxeTt0MXAD4g==
|
||||
MD5 (dovecot-1.2.14-managesieve-0.11.11.diff.gz) = k9aO/1IPsEXvkMv3lmfYLA==
|
||||
MD5 (dovecot-1.2.14.tar.gz) = H+QemcHeoxG+7m1NmUSQzA==
|
||||
MD5 (dovecot-1.2.15.tar.gz) = Ff4wf+hah8t6aXZV26sp0A==
|
||||
RMD160 (dovecot-1.2-managesieve-0.11.11.tar.gz) = Fh0UP1pCrukpq/UbYrOw5uep8Ho=
|
||||
RMD160 (dovecot-1.2-sieve-0.1.17.tar.gz) = e1N0LHOIvydSGka44RIfRadk34c=
|
||||
RMD160 (dovecot-1.2.14-managesieve-0.11.11.diff.gz) = QWhOzTZn/qxxoyV4avvvItClEZ0=
|
||||
RMD160 (dovecot-1.2.14.tar.gz) = kWso463hZpVG4ZIRon2JcaKqv4c=
|
||||
RMD160 (dovecot-1.2.15.tar.gz) = S03vepWXKbngEYRWXbkPCn7kH54=
|
||||
SHA1 (dovecot-1.2-managesieve-0.11.11.tar.gz) = U/hhip4C+VORI5CnuAPrYhi/lpo=
|
||||
SHA1 (dovecot-1.2-sieve-0.1.17.tar.gz) = QgFCqEONduOElyfDq0veWlt/t+Q=
|
||||
SHA1 (dovecot-1.2.14-managesieve-0.11.11.diff.gz) = g7OViYELrtxVpuFeNHN9fejsSMw=
|
||||
SHA1 (dovecot-1.2.14.tar.gz) = wdqMdWO9Ii2wPLTNW7Jr1PnWtFs=
|
||||
SHA1 (dovecot-1.2.15.tar.gz) = gopL2IIsLRxT7lYkcgG5a4J7BO4=
|
||||
SHA256 (dovecot-1.2-managesieve-0.11.11.tar.gz) = eSzAbmAlDin1F6+jUAaa8tcAF0ZEXTsZu/Gu+LbdhT4=
|
||||
SHA256 (dovecot-1.2-sieve-0.1.17.tar.gz) = 4CpKG1lYu+HI4hbxHQAWbjPDGzBMvUGA3imxod1efQs=
|
||||
SHA256 (dovecot-1.2.14-managesieve-0.11.11.diff.gz) = W/GoyYP3jCtJ2QaLtX9SABEm/NHnqxxdr586VYwI5pY=
|
||||
SHA256 (dovecot-1.2.14.tar.gz) = klzV0eil5evW4rmIeVerH5HUb/jWRmC6jtQ1Q6QNa54=
|
||||
SHA256 (dovecot-1.2.15.tar.gz) = knhFugo94dotDs78J+g13SOkE83wX9BERCv/tekBRC8=
|
||||
SIZE (dovecot-1.2-managesieve-0.11.11.tar.gz) = 439239
|
||||
SIZE (dovecot-1.2-sieve-0.1.17.tar.gz) = 1029070
|
||||
SIZE (dovecot-1.2.14-managesieve-0.11.11.diff.gz) = 6459
|
||||
SIZE (dovecot-1.2.14.tar.gz) = 2947472
|
||||
SIZE (dovecot-1.2.15.tar.gz) = 2948856
|
||||
|
@ -1,80 +0,0 @@
|
||||
$OpenBSD: patch-src_imap_cmd-select_c,v 1.3 2010/09/17 13:11:14 sthen Exp $
|
||||
--- src/imap/cmd-select.c.orig Mon Aug 23 10:37:53 2010
|
||||
+++ src/imap/cmd-select.c Mon Sep 6 17:06:13 2010
|
||||
@@ -327,10 +327,28 @@ select_open(struct imap_select_context *ctx, const cha
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static void close_selected_mailbox(struct client *client)
|
||||
+{
|
||||
+ struct mail_storage *old_storage;
|
||||
+ struct mailbox *box;
|
||||
+
|
||||
+ if (client->mailbox == NULL)
|
||||
+ return;
|
||||
+
|
||||
+ old_storage = mailbox_get_storage(client->mailbox);
|
||||
+ client_search_updates_free(client);
|
||||
+ box = client->mailbox;
|
||||
+ client->mailbox = NULL;
|
||||
+
|
||||
+ if (mailbox_close(&box) < 0)
|
||||
+ client_send_untagged_storage_error(client, old_storage);
|
||||
+ /* CLOSED response is required by QRESYNC */
|
||||
+ client_send_line(client, "* OK [CLOSED] Previous mailbox closed.");
|
||||
+}
|
||||
+
|
||||
bool cmd_select_full(struct client_command_context *cmd, bool readonly)
|
||||
{
|
||||
struct client *client = cmd->client;
|
||||
- struct mailbox *box;
|
||||
struct imap_select_context *ctx;
|
||||
const struct imap_arg *args;
|
||||
const char *mailbox;
|
||||
@@ -342,6 +360,7 @@ bool cmd_select_full(struct client_command_context *cm
|
||||
|
||||
if (!IMAP_ARG_TYPE_IS_STRING(args[0].type)) {
|
||||
client_send_command_error(cmd, "Invalid arguments.");
|
||||
+ close_selected_mailbox(client);
|
||||
return FALSE;
|
||||
}
|
||||
mailbox = IMAP_ARG_STR(&args[0]);
|
||||
@@ -349,12 +368,15 @@ bool cmd_select_full(struct client_command_context *cm
|
||||
ctx = p_new(cmd->pool, struct imap_select_context, 1);
|
||||
ctx->cmd = cmd;
|
||||
ctx->storage = client_find_storage(cmd, &mailbox);
|
||||
- if (ctx->storage == NULL)
|
||||
+ if (ctx->storage == NULL) {
|
||||
+ close_selected_mailbox(client);
|
||||
return TRUE;
|
||||
+ }
|
||||
|
||||
if (args[1].type == IMAP_ARG_LIST) {
|
||||
if (!select_parse_options(ctx, IMAP_ARG_LIST_ARGS(&args[1]))) {
|
||||
select_context_free(ctx);
|
||||
+ close_selected_mailbox(client);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
@@ -362,20 +384,7 @@ bool cmd_select_full(struct client_command_context *cm
|
||||
i_assert(client->mailbox_change_lock == NULL);
|
||||
client->mailbox_change_lock = cmd;
|
||||
|
||||
- if (client->mailbox != NULL) {
|
||||
- struct mail_storage *old_storage =
|
||||
- mailbox_get_storage(client->mailbox);
|
||||
-
|
||||
- client_search_updates_free(client);
|
||||
- box = client->mailbox;
|
||||
- client->mailbox = NULL;
|
||||
-
|
||||
- if (mailbox_close(&box) < 0)
|
||||
- client_send_untagged_storage_error(client, old_storage);
|
||||
- /* CLOSED response is required by QRESYNC */
|
||||
- client_send_line(client,
|
||||
- "* OK [CLOSED] Previous mailbox closed.");
|
||||
- }
|
||||
+ close_selected_mailbox(client);
|
||||
|
||||
if (ctx->condstore) {
|
||||
/* Enable while no mailbox is opened to avoid sending
|
@ -1,46 +0,0 @@
|
||||
$OpenBSD: patch-src_lib-storage_index_maildir_maildir-uidlist_c,v 1.3 2010/09/17 22:00:18 sthen Exp $
|
||||
--- src/lib-storage/index/maildir/maildir-uidlist.c.orig Fri Sep 17 09:44:44 2010
|
||||
+++ src/lib-storage/index/maildir/maildir-uidlist.c Fri Sep 17 09:48:18 2010
|
||||
@@ -89,6 +89,7 @@ struct maildir_uidlist {
|
||||
string_t *hdr_extensions;
|
||||
|
||||
unsigned int recreate:1;
|
||||
+ unsigned int recreate_on_change:1;
|
||||
unsigned int initial_read:1;
|
||||
unsigned int initial_hdr_read:1;
|
||||
unsigned int retry_rewind:1;
|
||||
@@ -758,7 +759,7 @@ maildir_uidlist_update_read(struct maildir_uidlist *ui
|
||||
ret = -1;
|
||||
|
||||
if (uidlist->unsorted) {
|
||||
- uidlist->recreate = TRUE;
|
||||
+ uidlist->recreate_on_change = TRUE;
|
||||
maildir_uidlist_records_sort_by_uid(uidlist);
|
||||
}
|
||||
if (uidlist->next_uid <= uidlist->prev_read_uid)
|
||||
@@ -1375,6 +1376,7 @@ static int maildir_uidlist_recreate(struct maildir_uid
|
||||
uidlist->fd_size = st.st_size;
|
||||
uidlist->last_read_offset = st.st_size;
|
||||
uidlist->recreate = FALSE;
|
||||
+ uidlist->recreate_on_change = FALSE;
|
||||
maildir_uidlist_update_hdr(uidlist, &st);
|
||||
}
|
||||
if (ret < 0)
|
||||
@@ -1446,7 +1448,7 @@ static int maildir_uidlist_sync_update(struct maildir_
|
||||
}
|
||||
|
||||
|
||||
- if (maildir_uidlist_want_recreate(ctx))
|
||||
+ if (maildir_uidlist_want_recreate(ctx) || uidlist->recreate_on_change)
|
||||
return maildir_uidlist_recreate(uidlist);
|
||||
|
||||
if (!uidlist->locked_refresh || uidlist->fd == -1) {
|
||||
@@ -1796,7 +1798,7 @@ static void maildir_uidlist_assign_uids(struct maildir
|
||||
recs[dest]->flags &= ~MAILDIR_UIDLIST_REC_FLAG_MOVED;
|
||||
}
|
||||
|
||||
- if (ctx->uidlist->locked_refresh)
|
||||
+ if (ctx->uidlist->locked_refresh && ctx->uidlist->initial_read)
|
||||
ctx->uidlist->last_seen_uid = ctx->uidlist->next_uid-1;
|
||||
|
||||
ctx->new_files_count = 0;
|
@ -1,23 +0,0 @@
|
||||
$OpenBSD: patch-src_lib_failures_c,v 1.3 2010/09/17 22:00:18 sthen Exp $
|
||||
--- src/lib/failures.c.orig Fri Sep 17 09:48:50 2010
|
||||
+++ src/lib/failures.c Fri Sep 17 09:50:37 2010
|
||||
@@ -81,7 +81,6 @@ static int log_fd_write(int fd, const unsigned char *d
|
||||
struct ioloop *ioloop;
|
||||
struct io *io;
|
||||
ssize_t ret;
|
||||
- unsigned int eintr_count = 0;
|
||||
|
||||
while ((ret = write(fd, data, len)) != (ssize_t)len) {
|
||||
if (ret > 0) {
|
||||
@@ -95,9 +94,9 @@ static int log_fd_write(int fd, const unsigned char *d
|
||||
errno = ENOSPC;
|
||||
return -1;
|
||||
}
|
||||
- if (errno == EINTR && ++eintr_count < 3) {
|
||||
+ if (errno == EINTR) {
|
||||
/* we don't want to die because of this.
|
||||
- try again a couple of times. */
|
||||
+ especially SIGCHLD signals can be coming rapidly. */
|
||||
continue;
|
||||
}
|
||||
if (errno != EAGAIN)
|
@ -1,12 +0,0 @@
|
||||
$OpenBSD: patch-src_lib_restrict-access_c,v 1.1 2010/09/17 13:11:14 sthen Exp $
|
||||
--- src/lib/restrict-access.c.orig Mon Sep 6 17:04:04 2010
|
||||
+++ src/lib/restrict-access.c Mon Sep 6 17:05:16 2010
|
||||
@@ -98,7 +98,7 @@ static void restrict_init_groups(gid_t primary_gid, gi
|
||||
"process group set to %s instead of %s)",
|
||||
get_gid_str(primary_gid), get_uid_str(geteuid()),
|
||||
get_gid_str(getgid()), get_gid_str(getegid()),
|
||||
- get_gid_str(primary_gid), get_uid_str(geteuid()));
|
||||
+ get_gid_str(primary_gid), get_gid_str(getegid()));
|
||||
}
|
||||
return;
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
@comment $OpenBSD: PLIST-server,v 1.14 2010/03/23 21:32:07 pea Exp $
|
||||
@comment $OpenBSD: PLIST-server,v 1.15 2010/10/03 23:25:52 sthen Exp $
|
||||
@pkgpath ${BASE_PKGPATH}
|
||||
@newgroup _dovecot:518
|
||||
@newuser _dovecot:518:_dovecot:daemon:Dovecot Account:/nonexistent:/sbin/nologin
|
||||
@ -155,15 +155,35 @@ share/doc/dovecot/wiki/Debugging.Authentication.txt
|
||||
share/doc/dovecot/wiki/Debugging.ProcessTracing.txt
|
||||
share/doc/dovecot/wiki/Debugging.Rawlog.txt
|
||||
share/doc/dovecot/wiki/Debugging.Thunderbird.txt
|
||||
share/doc/dovecot/wiki/Design.Arrays.txt
|
||||
share/doc/dovecot/wiki/Design.AuthProcess.txt
|
||||
share/doc/dovecot/wiki/Design.Buffers.txt
|
||||
share/doc/dovecot/wiki/Design.Indexes.Cache.txt
|
||||
share/doc/dovecot/wiki/Design.Indexes.MailIndexApi.txt
|
||||
share/doc/dovecot/wiki/Design.Indexes.MainIndex.txt
|
||||
share/doc/dovecot/wiki/Design.Indexes.TransactionLog.txt
|
||||
share/doc/dovecot/wiki/Design.Indexes.txt
|
||||
share/doc/dovecot/wiki/Design.InputStreams.txt
|
||||
share/doc/dovecot/wiki/Design.MailProcess.txt
|
||||
share/doc/dovecot/wiki/Design.Memory.txt
|
||||
share/doc/dovecot/wiki/Design.OutputStreams.txt
|
||||
share/doc/dovecot/wiki/Design.Plugins.txt
|
||||
share/doc/dovecot/wiki/Design.Processes.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.ErrorHandling.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.Mail.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.MailNamespace.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.MailStorage.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.MailUser.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.Mailbox.Save.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.Mailbox.Search.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.Mailbox.Sync.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.Mailbox.Transaction.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.Mailbox.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.MailboxList.txt
|
||||
share/doc/dovecot/wiki/Design.Storage.Plugins.txt
|
||||
share/doc/dovecot/wiki/Design.Strings.txt
|
||||
share/doc/dovecot/wiki/Design.txt
|
||||
share/doc/dovecot/wiki/DomainLost.txt
|
||||
share/doc/dovecot/wiki/FindMailLocation.txt
|
||||
share/doc/dovecot/wiki/FinishBasicConfiguration.txt
|
||||
share/doc/dovecot/wiki/HowTo.EximAndDovecotSASL.txt
|
||||
@ -181,6 +201,8 @@ share/doc/dovecot/wiki/LDA.Indexing.txt
|
||||
share/doc/dovecot/wiki/LDA.Postfix.txt
|
||||
share/doc/dovecot/wiki/LDA.Qmail.txt
|
||||
share/doc/dovecot/wiki/LDA.Sendmail.txt
|
||||
share/doc/dovecot/wiki/LDA.Sieve.CMU.txt
|
||||
share/doc/dovecot/wiki/LDA.Sieve.Dovecot.txt
|
||||
share/doc/dovecot/wiki/LDA.Sieve.txt
|
||||
share/doc/dovecot/wiki/LDA.txt
|
||||
share/doc/dovecot/wiki/Logging.txt
|
||||
@ -200,6 +222,11 @@ share/doc/dovecot/wiki/MailboxFormat.mailstore.txt
|
||||
share/doc/dovecot/wiki/MailboxFormat.mbox.txt
|
||||
share/doc/dovecot/wiki/MailboxFormat.mbx.txt
|
||||
share/doc/dovecot/wiki/MailboxFormat.txt
|
||||
share/doc/dovecot/wiki/ManageSieve.Clients.txt
|
||||
share/doc/dovecot/wiki/ManageSieve.Configuration.txt
|
||||
share/doc/dovecot/wiki/ManageSieve.Install.1.0.txt
|
||||
share/doc/dovecot/wiki/ManageSieve.Install.txt
|
||||
share/doc/dovecot/wiki/ManageSieve.Troubleshooting.txt
|
||||
share/doc/dovecot/wiki/ManageSieve.txt
|
||||
share/doc/dovecot/wiki/MboxLocking.txt
|
||||
share/doc/dovecot/wiki/MboxProblems.txt
|
||||
@ -245,6 +272,7 @@ share/doc/dovecot/wiki/Plugins.Virtual.txt
|
||||
share/doc/dovecot/wiki/Plugins.Zlib.txt
|
||||
share/doc/dovecot/wiki/Plugins.txt
|
||||
share/doc/dovecot/wiki/PostLoginScripting.txt
|
||||
share/doc/dovecot/wiki/PreAuth.txt
|
||||
share/doc/dovecot/wiki/QuickConfiguration.txt
|
||||
share/doc/dovecot/wiki/Quota.1.1.txt
|
||||
share/doc/dovecot/wiki/Quota.Dict.txt
|
||||
@ -278,7 +306,9 @@ share/doc/dovecot/wiki/UserDatabase.Prefetch.txt
|
||||
share/doc/dovecot/wiki/UserDatabase.Static.txt
|
||||
share/doc/dovecot/wiki/UserDatabase.txt
|
||||
share/doc/dovecot/wiki/UserIds.txt
|
||||
share/doc/dovecot/wiki/VarMailDotLock.txt
|
||||
share/doc/dovecot/wiki/Variables.txt
|
||||
share/doc/dovecot/wiki/VirtualUsers.Home.txt
|
||||
share/doc/dovecot/wiki/VirtualUsers.txt
|
||||
share/doc/dovecot/wiki/WhyDoesItNotWork.txt
|
||||
share/doc/dovecot/wiki/maildrop.txt
|
||||
|
Loading…
x
Reference in New Issue
Block a user