[dovecot/core] 12c51b: lib-storage: Fix mailbox rename checking child mai...

GitHub noreply at github.com
Thu Feb 8 12:30:11 EET 2018


  Branch: refs/heads/master
  Home:   https://github.com/dovecot/core
  Commit: 12c51b003981a77946c7cc11833662489665268a
      https://github.com/dovecot/core/commit/12c51b003981a77946c7cc11833662489665268a
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M src/lib-storage/mail-storage.c

  Log Message:
  -----------
  lib-storage: Fix mailbox rename checking child mailbox name lengths

It was supposed to prevent allowing renames that would cause any child
mailbox name to be too long. However, the check wasn't working.


  Commit: a0169b23c31e3f2b6196685a7cb8cd69c6490f43
      https://github.com/dovecot/core/commit/a0169b23c31e3f2b6196685a7cb8cd69c6490f43
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M src/lib-storage/mail-storage.c

  Log Message:
  -----------
  lib-storage: mailbox_rename() - Use source storage for errors

It was documented to use source storage for errors, but some of the errors
were set to destination storage.


  Commit: 1a8872ce4eb92ca53407b9c95b2cf0ce7043c3bd
      https://github.com/dovecot/core/commit/1a8872ce4eb92ca53407b9c95b2cf0ce7043c3bd
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M src/lib-storage/mail-storage.c

  Log Message:
  -----------
  lib-storage: mailbox_delete() - Fix cleanup in error handling

If removing index deletion mark failed, box->deleting wasn't set to FALSE
and the mailbox was left opened.


  Commit: 847caf605dc11acfb1861586b558d9cca4a85cb0
      https://github.com/dovecot/core/commit/847caf605dc11acfb1861586b558d9cca4a85cb0
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M src/lib-storage/mailbox-list-private.h
    M src/lib-storage/mailbox-list.c

  Log Message:
  -----------
  lib-storage: Add mailbox_list_[un]lock()


  Commit: 2477c8689f805886cc2d18e3791f130b5a20c331
      https://github.com/dovecot/core/commit/2477c8689f805886cc2d18e3791f130b5a20c331
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M src/lib-storage/mail-storage.c

  Log Message:
  -----------
  lib-storage: Lock mailbox_list for mailbox create/delete/rename

This is only required for mailbox creation to fix a race condition with
LAYOUT=index: If INBOX doesn't exist it will rescan the mailboxes to
find out if there are any missing ones. If INBOX creation isn't locked,
it's possible that the first process hasn't finished creating INBOX
before the second process find it and attempts to open it.

The delete and rename locking are probably useful to guard against race
conditions when clients intentionally issues create/delete/rename commands
concurrently.


  Commit: 2da20ac5a4af910deebf4312469ba925bb88f432
      https://github.com/dovecot/core/commit/2da20ac5a4af910deebf4312469ba925bb88f432
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M src/doveadm/dsync/dsync-mailbox-import.c

  Log Message:
  -----------
  dsync: Log a warning if copying a mail fails unexpectedly

Don't log a warning if it happens because the source message was expunged.
That's an expected failure.


Compare: https://github.com/dovecot/core/compare/b757d62e1172...2da20ac5a4af


More information about the dovecot-cvs mailing list