[dovecot/core] 1f6c70: lib: add t_strfgmtime and t_strftime

GitHub noreply at github.com
Thu Dec 15 14:30:14 UTC 2016


  Branch: refs/heads/master-2.2
  Home:   https://github.com/dovecot/core
  Commit: 1f6c70b7d4929e2d90777bcfba35df5500f66fdb
      https://github.com/dovecot/core/commit/1f6c70b7d4929e2d90777bcfba35df5500f66fdb
  Author: Martti Rannanjärvi <martti.rannanjarvi at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/lib/test-time-util.c
    M src/lib/time-util.c
    M src/lib/time-util.h

  Log Message:
  -----------
  lib: add t_strfgmtime and t_strftime


  Commit: 41d538d5d87870d64b78d2d2bd8f8ffdf8496c45
      https://github.com/dovecot/core/commit/41d538d5d87870d64b78d2d2bd8f8ffdf8496c45
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/doveadm/client-connection-http.c

  Log Message:
  -----------
  doveadm-server: http: Fixed temp_path_prefix for iostream-temp.

The temp_path_prefix was "/tmp", which is extended to "/tmp<hostname>.<pid>.<random>" by safe_mkstemp.

Obviously, mortal users cannot create a file like that, causing this error:
doveadm: Error: safe_mkstemp(/tmp) failed: Permission denied

The temp_path_prefix should have been "/tmp/doveadm.", as it is elsewhere as well.


  Commit: 634c8fdf936e1348fe6c55dc9633fc21a8e6c560
      https://github.com/dovecot/core/commit/634c8fdf936e1348fe6c55dc9633fc21a8e6c560
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/config/config-filter.c

  Log Message:
  -----------
  config: Avoid excessive data stack usage when matching local_name

Moved config_filter_match_local_name() to its own function to make
adding the data stack frame easier.

Based on patch by J. Nick Koston


  Commit: 3f4d68e195ac14ab4c6fe6570659172700599343
      https://github.com/dovecot/core/commit/3f4d68e195ac14ab4c6fe6570659172700599343
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/lib-storage/index/imapc/imapc-sync.c

  Log Message:
  -----------
  imapc: Don't send NOOP immediately after SELECT

NOOP is normally used by mailbox syncing to check if there are any changes
done by other concurrent IMAP sessions. But doing it immediately after
SELECT is unnecessary, because nothing could have changed.


  Commit: c927f013b17df637831eda48d200ccfdb4e0588a
      https://github.com/dovecot/core/commit/c927f013b17df637831eda48d200ccfdb4e0588a
  Author: manuel <manuel at mausz.at>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/lib-ssl-iostream/iostream-openssl.c
    M src/login-common/ssl-proxy-openssl.c

  Log Message:
  -----------
  openssl: Clear error queue after an incomplete SSL_shutdown

If the SSL_shutdown-call fails (e.g. because the underlaying socket has
already been closed) OpenSSL puts the corresponding error into the
queue. We don't care about details so we need to clear the queue.

Otherwise the error will be pulled while error checking the next OpenSSL
call of an unrelated connection.


  Commit: a42f612e815de8192e507d1e99c7d50f6eccc1a4
      https://github.com/dovecot/core/commit/a42f612e815de8192e507d1e99c7d50f6eccc1a4
  Author: Paul Howarth <paul at city-fan.org>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M configure.ac

  Log Message:
  -----------
  configure: Fix some implicit function declarations

Some configure tests fail unexpectedly if the compiler flag
-Werror=implicit-function-declarations is enabled, which can result
in the wrong implementations being used.

This compiler flag is now enabled by default in Fedora Rawhide:
https://fedoraproject.org/wiki/Changes/Fedora26CFlags

<stdlib.h> is needed for exit()
<string.h> is needed for strcpy()


  Commit: de8d17ac9d6765311c1d611b7c72761e13086ec6
      https://github.com/dovecot/core/commit/de8d17ac9d6765311c1d611b7c72761e13086ec6
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

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

  Log Message:
  -----------
  lib-storage: Do not try to recover missing list index

Fixes Panic: file mailbox-list-index.c: line 342 (mailbox_list_index_parse_records): assertion failed: (node != NULL)


  Commit: 46c6c7a6b64c2d615dc1d072e269ba9eca7c4522
      https://github.com/dovecot/core/commit/46c6c7a6b64c2d615dc1d072e269ba9eca7c4522
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/doveadm/doveadm-util.c

  Log Message:
  -----------
  doveadm: When connecting to doveadm-server via TCP, use 30s timeout

Should be enough, and better than the kernel's default, which might be a lot
more.


  Commit: 731eee95835c41cfc8fc8096dc0b14e31d578ee1
      https://github.com/dovecot/core/commit/731eee95835c41cfc8fc8096dc0b14e31d578ee1
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/doveadm/doveadm.c

  Log Message:
  -----------
  doveadm: Add global doveadm_verbose_proctitle setting.

This previously existed only for doveadm-server, but adding it to doveadm
CLI makes it easier to do process title updates for it as well.


  Commit: d48b82df7b75285613bf502c3f52e3c09150ac47
      https://github.com/dovecot/core/commit/d48b82df7b75285613bf502c3f52e3c09150ac47
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/doveadm/client-connection.c

  Log Message:
  -----------
  doveadm-server: Show UNIX socket connections as <local> in process title

Earlier they were shown as empty string.


  Commit: ec6eabda015d7cd3cf753355482151bb167e14a5
      https://github.com/dovecot/core/commit/ec6eabda015d7cd3cf753355482151bb167e14a5
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/doveadm/doveadm-dsync.c
    M src/doveadm/dsync/dsync-brain.c

  Log Message:
  -----------
  dsync: Improve process title during initialization

If something is hanging, this should make it clear what exactly it is.


  Commit: 364aa4716d65070dc423cb64df1f4dc219c20dfe
      https://github.com/dovecot/core/commit/364aa4716d65070dc423cb64df1f4dc219c20dfe
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/doveadm/dsync/dsync-brain.c

  Log Message:
  -----------
  dsync: Fix .dovecot-sync.lock timeout checking

Whenever the lock file was recreated, the lock timeout was reset. Switched
to using file_create_locked(), which already solves this problem and has
compatible locking.


  Commit: 891b344591292e3660e8a65b14321aa91e2b1cbf
      https://github.com/dovecot/core/commit/891b344591292e3660e8a65b14321aa91e2b1cbf
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-13 (Tue, 13 Dec 2016)

  Changed paths:
    M src/imap/imap-search.c

  Log Message:
  -----------
  imap: Fix assert when waiting for input on SEARCH/SORT

Set cmd->state to CLIENT_COMMAND_STATE_WAIT_EXTERNAL
because we are not expecting input or output.

Fixes Panic: file imap-client.c: line 854 (client_check_command_hangs): assertion failed: (client->io != NULL || (client->output_cmd_lock != NULL && client->output_cmd_lock != client->input_lock))


  Commit: 98fdeba00c8404ce00c77f896b1afd95ce5cf42c
      https://github.com/dovecot/core/commit/98fdeba00c8404ce00c77f896b1afd95ce5cf42c
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/doveadm/doveadm-director.c

  Log Message:
  -----------
  doveadm-director: Show tag field from response

Fix off-by-one in doveadm director dump


  Commit: 2277ba5fcff3b8e0e86f5f8fcb2d32f50a3e2fc8
      https://github.com/dovecot/core/commit/2277ba5fcff3b8e0e86f5f8fcb2d32f50a3e2fc8
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/plugins/mail-crypt/mail-crypt-global-key.c
    M src/plugins/mail-crypt/test-mail-global-key.c

  Log Message:
  -----------
  mail-crypt: Ensure array is created before accessing it

Fixes segmentation fault on fs-crypt when keys are not
configured.


  Commit: 619d00ad9da106652dec9c6425ebcef0360d87f4
      https://github.com/dovecot/core/commit/619d00ad9da106652dec9c6425ebcef0360d87f4
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-index/mail-index-transaction-update.c
    M src/lib-index/mail-index.h

  Log Message:
  -----------
  lib-index: Add mail_index_revert_changes()

This can be used to revert changes done in a transaction to the specified
existing mail.


  Commit: 29ddc0769bc97a9692b0a66ec246f23219711986
      https://github.com/dovecot/core/commit/29ddc0769bc97a9692b0a66ec246f23219711986
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-imap/imap-bodystructure.c
    M src/lib-imap/test-imap-bodystructure.c

  Log Message:
  -----------
  lib-imap: imap-bodystructure: Prevent writing erroneous whitespace between items in an envelope address list.

Both imap_bodystructure_write() and imap_body_parse_from_bodystructure() produced such invalid output.
This caused an RFC 3501 violation in IMAP FETCH BODY and BODYSTRUCTURE responses.

Test suite is amended to test this situation.


  Commit: e78960f08f9bb77ef228dface94b9a11386c7d66
      https://github.com/dovecot/core/commit/e78960f08f9bb77ef228dface94b9a11386c7d66
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/doveadm/doveadm-mail-save.c

  Log Message:
  -----------
  doveadm-save: Set exit code to EX_TEMPFAIL on open error

Prevents potential crash on doveadm_mail_next_user


  Commit: b127fb24b55ce538dbe22132443a387c047c3a4a
      https://github.com/dovecot/core/commit/b127fb24b55ce538dbe22132443a387c047c3a4a
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/doveadm/doveadm-mail.c

  Log Message:
  -----------
  doveadm-mail: Set exit code to EX_TEMPFAIL on timeout

When running `doveadm save` command on proxy/director
and the remote command execution times out, exit code
must be set to EX_TEMPFAIL.

Fixes Panic: file doveadm-mail.c: line 405 (doveadm_mail_next_user):
assertion failed: (ctx->exit_code != 0)


  Commit: 333ccb2c51e76fc029af0327bd2def71459a57b4
      https://github.com/dovecot/core/commit/333ccb2c51e76fc029af0327bd2def71459a57b4
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-test/test-common.c
    M src/lib-test/test-common.h

  Log Message:
  -----------
  lib-test: Introduce test_fatal_func_t as typedef and comment how it works.


  Commit: 200176aaa1bbb0b3d4ecc51ca7f5f00651ab0774
      https://github.com/dovecot/core/commit/200176aaa1bbb0b3d4ecc51ca7f5f00651ab0774
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-test/test-common.c
    M src/lib-test/test-common.h

  Log Message:
  -----------
  lib-test: test_run_with_fatals() now takes a const array


  Commit: 1007f76fad711bd263acd510a0eb5cc78cca2d0e
      https://github.com/dovecot/core/commit/1007f76fad711bd263acd510a0eb5cc78cca2d0e
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-test/test-common.c
    M src/lib-test/test-common.h
    M src/lib/test-array.c
    M src/lib/test-data-stack.c
    M src/lib/test-lib.c
    M src/lib/test-lib.h
    M src/lib/test-mempool-alloconly.c
    M src/lib/test-printf-format-fix.c

  Log Message:
  -----------
  lib-test: Change test_fatal_func_t to take unsigned int stage as parameter.

It could never be -1, so this makes it clearer. It also removes annoying
casts when comparing stage to e.g. N_ELEMENTS().


  Commit: 008b46a1d3e3a1a9459590be86a4c0014e333976
      https://github.com/dovecot/core/commit/008b46a1d3e3a1a9459590be86a4c0014e333976
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib/sha3.c

  Log Message:
  -----------
  sha3: Fix typo in ifdef

The code was supposed to be used with big endian
machines.

Reported by than at redhat.com


  Commit: cc94fec395fb4ba5df48a76044b4ca9cfe1b3bcb
      https://github.com/dovecot/core/commit/cc94fec395fb4ba5df48a76044b4ca9cfe1b3bcb
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/auth/auth-policy.c

  Log Message:
  -----------
  auth-policy: Allow unsupported attributes in response

Do not choke if we receive unsupported attributes in
response. This allows better interoperability with
different systems that are getting signals from
auth policy server that are not (yet) supported by
dovecot.


  Commit: 299e2ee7101aa70e8f05e77df12832198c6f588c
      https://github.com/dovecot/core/commit/299e2ee7101aa70e8f05e77df12832198c6f588c
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/plugins/mail-crypt/test-mail-global-key.c
    M src/plugins/mail-crypt/test-mail-key.c

  Log Message:
  -----------
  mail-crypt: Skip tests if dcrypt cannot be initialized

Avoids breaking tests on system without working
ECC keys.


  Commit: ddc3de0b24a4d5ac1cbb0a89ed68f449ffcaa8b3
      https://github.com/dovecot/core/commit/ddc3de0b24a4d5ac1cbb0a89ed68f449ffcaa8b3
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/plugins/mail-crypt/mail-crypt-plugin.c

  Log Message:
  -----------
  mail-crypt: Treat empty values correctly

If mail_crypt_curve or mail_crypt_save_version
is left empty, disable the plugin. Don't error
out.


  Commit: bfb24d8490fbd5f94fbbc07ea789b99aef5a697f
      https://github.com/dovecot/core/commit/bfb24d8490fbd5f94fbbc07ea789b99aef5a697f
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-storage/list/mailbox-list-index-backend.c

  Log Message:
  -----------
  lib-storage: Fix crash in obox's dsync-merge


  Commit: db6e8f1abf8a6f626fedd3021b8adabc5caed2d9
      https://github.com/dovecot/core/commit/db6e8f1abf8a6f626fedd3021b8adabc5caed2d9
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-sql/driver-mysql.c

  Log Message:
  -----------
  driver-mysql: Do not hex-encode again

Use correct syntax to provide data to
mysql in hex format, without recoding
it in hex format again.


  Commit: 897f17c5ac0870479d2505c2eccdfeaa3ed9c7e8
      https://github.com/dovecot/core/commit/897f17c5ac0870479d2505c2eccdfeaa3ed9c7e8
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib/file-cache.c
    M src/lib/file-cache.h

  Log Message:
  -----------
  lib: Add file_cache_new_path() to include path in error messages.


  Commit: e430554859d92b631c681bbe952e8e644abc6b80
      https://github.com/dovecot/core/commit/e430554859d92b631c681bbe952e8e644abc6b80
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-index/mail-cache.c

  Log Message:
  -----------
  lib-index: Use file_cache_new_path() for dovecot.index.cache


  Commit: e847976fdbfd5fd651c32f67e56294d028bd9648
      https://github.com/dovecot/core/commit/e847976fdbfd5fd651c32f67e56294d028bd9648
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/plugins/fts-squat/squat-trie.c
    M src/plugins/fts-squat/squat-uidlist.c

  Log Message:
  -----------
  fts-squat: Use file_cache_new_path() for squat indexes


  Commit: d677fd49ffe9ffb51b2e623085f40ac6e5d38dd7
      https://github.com/dovecot/core/commit/d677fd49ffe9ffb51b2e623085f40ac6e5d38dd7
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-storage/index/imapc/imapc-mailbox.c
    M src/lib-storage/index/imapc/imapc-search.c

  Log Message:
  -----------
  imapc: Don't allow "*" in SEARCH replies

Doesn't fix anything, but makes the parsing a bit more correct.


  Commit: cac30e45782649dd77a43304e3b1c09c23430a0e
      https://github.com/dovecot/core/commit/cac30e45782649dd77a43304e3b1c09c23430a0e
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-12-15 (Thu, 15 Dec 2016)

  Changed paths:
    M src/lib-storage/mail-search-args-simplify.c
    M src/lib-storage/test-mail-search-args-simplify.c

  Log Message:
  -----------
  lib-storage: Fix "*" in SEARCH seqset/uidset

4294967295 is used for "*", which matches the last existing message.
Which we don't know what it is at the time of search args simplification,
so avoid making any assumptions about it.

It's a bit ugly that 4294967295 can't be used as a valid UID, but this
restriction has already existed since the beginning of Dovecot. A future
alternative might be to add MAIL_SEARCH_ARG_FLAG_SEQSET_WITH_STAR, but
that's a bit complicated change.


Compare: https://github.com/dovecot/core/compare/7951e2289510...cac30e457826


More information about the dovecot-cvs mailing list