dovecot-1.2: pop3_lock_session=yes didn't use mail_privileged_gr...

dovecot at dovecot.org dovecot at dovecot.org
Sat Feb 28 00:39:52 EET 2009


details:   http://hg.dovecot.org/dovecot-1.2/rev/4204a706dc9b
changeset: 8794:4204a706dc9b
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Feb 27 17:39:48 2009 -0500
description:
pop3_lock_session=yes didn't use mail_privileged_group while dotlocking.

diffstat:

1 file changed, 14 insertions(+), 16 deletions(-)
src/lib-storage/index/mbox/mbox-storage.c |   30 +++++++++++++----------------

diffs (47 lines):

diff -r dbf2730f76f2 -r 4204a706dc9b src/lib-storage/index/mbox/mbox-storage.c
--- a/src/lib-storage/index/mbox/mbox-storage.c	Thu Feb 26 18:47:01 2009 -0500
+++ b/src/lib-storage/index/mbox/mbox-storage.c	Fri Feb 27 17:39:48 2009 -0500
@@ -591,22 +591,6 @@ mbox_alloc_mailbox(struct mbox_storage *
 
 	index_storage_mailbox_init(&mbox->ibox, name, flags,
 				   want_memory_indexes(storage, path));
-
-	if ((flags & MAILBOX_OPEN_KEEP_LOCKED) != 0) {
-		if (mbox_lock(mbox, F_WRLCK, &mbox->mbox_global_lock_id) <= 0) {
-			struct mailbox *box = &mbox->ibox.box;
-
-			mailbox_close(&box);
-			return NULL;
-		}
-
-		if (mbox->mbox_dotlock != NULL) {
-			mbox->keep_lock_to =
-				timeout_add(MBOX_LOCK_TOUCH_MSECS,
-					    mbox_lock_touch_timeout, mbox);
-		}
-	}
-
 	return mbox;
 }
 
@@ -639,6 +623,20 @@ mbox_open(struct mbox_storage *storage, 
 						MAILBOX_LIST_PATH_TYPE_DIR);
 		if (strncmp(path, rootdir, strlen(rootdir)) != 0)
 			mbox->mbox_privileged_locking = TRUE;
+	}
+	if ((flags & MAILBOX_OPEN_KEEP_LOCKED) != 0) {
+		if (mbox_lock(mbox, F_WRLCK, &mbox->mbox_global_lock_id) <= 0) {
+			struct mailbox *box = &mbox->ibox.box;
+
+			mailbox_close(&box);
+			return NULL;
+		}
+
+		if (mbox->mbox_dotlock != NULL) {
+			mbox->keep_lock_to =
+				timeout_add(MBOX_LOCK_TOUCH_MSECS,
+					    mbox_lock_touch_timeout, mbox);
+		}
 	}
 	return &mbox->ibox.box;
 }


More information about the dovecot-cvs mailing list