[dovecot/core] a2b679: virtual: Match any metadata condition

GitHub noreply at github.com
Tue Jul 18 14:00:14 EEST 2017


  Branch: refs/heads/master-2.2
  Home:   https://github.com/dovecot/core
  Commit: a2b679e4f30729ed599e984f94edbc2e28597d0b
      https://github.com/dovecot/core/commit/a2b679e4f30729ed599e984f94edbc2e28597d0b
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-config.c

  Log Message:
  -----------
  virtual: Match any metadata condition

The old code ignored succesful earlier matches for
patterns, and stopped looking on first non-matching
metadata pattern. Now it breaks on error or on first
matching pattern.


  Commit: 56064874cdfb90695a4ff61e0bc6168f83c3d907
      https://github.com/dovecot/core/commit/56064874cdfb90695a4ff61e0bc6168f83c3d907
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-storage.c

  Log Message:
  -----------
  virtual: Avoid assert-crash if backend mailbox's have_guid lookup fails

The MAIL_ERROR_NOTFOUND can happen if the mailbox was already deleted.
Other errors aren't expected to happen and possibly point to a bug.

Fixes:
Panic: file mail-storage.c: line 1831: unreached


  Commit: dc5ad57609d23d06413084406f173b853abdd542
      https://github.com/dovecot/core/commit/dc5ad57609d23d06413084406f173b853abdd542
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

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

  Log Message:
  -----------
  lib-storage: Add type checking for mailbox_list_notify_wait


  Commit: c9a7794a9286b9d1921157964dbae78b1884d428
      https://github.com/dovecot/core/commit/c9a7794a9286b9d1921157964dbae78b1884d428
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-storage.c
    M src/plugins/virtual/virtual-storage.h
    M src/plugins/virtual/virtual-sync.c

  Log Message:
  -----------
  virtual: Generate GUID for virtual folder

GUID is generated when index is first created
or the rules change.


  Commit: a565f19f91db32a18cfb659cb49d49fdc06ec83f
      https://github.com/dovecot/core/commit/a565f19f91db32a18cfb659cb49d49fdc06ec83f
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-storage.c
    M src/plugins/virtual/virtual-storage.h

  Log Message:
  -----------
  virtual: Use mailbox_notify_list API when mailbox_list_index is enabled


  Commit: e1662127215c1c33ae7a91756de1455368dd6638
      https://github.com/dovecot/core/commit/e1662127215c1c33ae7a91756de1455368dd6638
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-save.c

  Log Message:
  -----------
  virtual: Call mailbox_save_context_deinit before freeing context

Otherwise dest_mail does not get free'd


  Commit: dc672efe39039765f383c5d3043f18d595dceaac
      https://github.com/dovecot/core/commit/dc672efe39039765f383c5d3043f18d595dceaac
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-sync.c

  Log Message:
  -----------
  virtual: Fix recent flag updates

View must be updated before looking up seqs


  Commit: 792262268f0c535f866d26039982c5e549e66337
      https://github.com/dovecot/core/commit/792262268f0c535f866d26039982c5e549e66337
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-save.c

  Log Message:
  -----------
  virtual: Fix keywords handling

Keywords are per-mail object, and should be treated as one. The old
code left pointer to keywords dandling which lead into double-free.
Now the ctx->data is treated in similar way as other backends.

Fixes Panic: file mail-index.c: line 417 (mail_index_keywords_unref): assertion failed: (keywords->refcount > 0)
Fixes Panic: file mail-storage.c: line 2311 (mailbox_save_context_reset): assertion failed: (!ctx->unfinished)


  Commit: 830a446dbcc5fb7e2f0d3c6445f2c1333851fa4b
      https://github.com/dovecot/core/commit/830a446dbcc5fb7e2f0d3c6445f2c1333851fa4b
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

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

  Log Message:
  -----------
  lib-storage: Clarify keywords handling in mail_save_finish


  Commit: f109cdce3f207c7655762e70378e884d465927dd
      https://github.com/dovecot/core/commit/f109cdce3f207c7655762e70378e884d465927dd
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-sync.c

  Log Message:
  -----------
  virtual: Force header rewrite if header not found or crc32 changed

Otherwise the header gets only partially written


  Commit: d967ba782a93e23a2eafdfdff377a92eb048fd52
      https://github.com/dovecot/core/commit/d967ba782a93e23a2eafdfdff377a92eb048fd52
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-sync.c

  Log Message:
  -----------
  virtual: Fix highest_mailbox_id if it's wrong


  Commit: f01df57833f49f3412aa6d4f5291a09d919cc724
      https://github.com/dovecot/core/commit/f01df57833f49f3412aa6d4f5291a09d919cc724
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-sync.c

  Log Message:
  -----------
  virtual: Do not mark broken folder as initialized

Otherwise it won't get repaired


  Commit: 75c35656b71cd9eb801f37469b4fffe517c8906f
      https://github.com/dovecot/core/commit/75c35656b71cd9eb801f37469b4fffe517c8906f
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-sync.c

  Log Message:
  -----------
  virtual: Expunge virtual mails if backend box is deleted

When mail is added to a mailbox and then deleted, expunge
the sequences from virtual index in sync.

Fixes Error: Unexpectedly lost Mailbox ID 4


  Commit: 941561f5849d02d8a9af573311c8360762c60423
      https://github.com/dovecot/core/commit/941561f5849d02d8a9af573311c8360762c60423
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-mail.c

  Log Message:
  -----------
  virtual: Append virtual mailbox information to get stream reason


  Commit: 3ce4bc927f028ae9b4d4ac181df6a3e25875e530
      https://github.com/dovecot/core/commit/3ce4bc927f028ae9b4d4ac181df6a3e25875e530
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-storage.c

  Log Message:
  -----------
  virtual: Append virtual mailbox name to open reason on box alloc


  Commit: 1644711612eb17e918541c4e7407b1a449909179
      https://github.com/dovecot/core/commit/1644711612eb17e918541c4e7407b1a449909179
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-07-18 (Tue, 18 Jul 2017)

  Changed paths:
    M src/plugins/virtual/virtual-sync.c

  Log Message:
  -----------
  virtual: If virtual_uid is not assigned skip it

We cannot lookup mails with uid 0, so if we see
that mail has virtual uid 0, do not attempt to look it
up from index, but skip it.

Fixes Panic: file mail-index-map.c: line 549 (mail_index_map_lookup_seq_range): assertion failed: (first_uid > 0)


Compare: https://github.com/dovecot/core/compare/2ce54add9099...1644711612eb


More information about the dovecot-cvs mailing list