[dovecot/core] 0043fe: lib: lib-signals: Removed explicit notification of...

GitHub noreply at github.com
Thu Sep 7 12:00:10 EEST 2017


  Branch: refs/heads/master
  Home:   https://github.com/dovecot/core
  Commit: 0043fea12a75cf8fcf2892673106844376da8e76
      https://github.com/dovecot/core/commit/0043fea12a75cf8fcf2892673106844376da8e76
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/doveadm/client-connection-http.c
    M src/doveadm/client-connection.c
    M src/lib-auth/auth-master.c
    M src/lib-program-client/program-client-local.c
    M src/lib-program-client/test-program-client-local.c
    M src/lib/Makefile.am
    M src/lib/child-wait.c
    M src/lib/child-wait.h
    M src/lib/lib-signals.c
    M src/lib/lib-signals.h
    A src/lib/test-lib-signals.c
    M src/lib/test-lib.inc

  Log Message:
  -----------
  lib: lib-signals: Removed explicit notification of ioloop change through lib_signals_reset_ioloop() in favor of implicit method.

Before, if the ioloop changed, the application had to explicitly notify lib-signals using lib_signals_reset_ioloop().
This is error-prone and requires doing this all over the Dovecot code base.
Now, lib-signals registers an ioloop switch callback that deals with this implicitly.
The application can detach lib-signals from the ioloop explicitly if delayed signal handling is not required/desired in the new ioloop.
Specific delayed signal handlers can be exempt from this automated behavior using a flag, meaning that such signal handlers need to be moved between ioloops explicitly.


  Commit: da32b4dc82cd112609a8707823c40584f6aae948
      https://github.com/dovecot/core/commit/da32b4dc82cd112609a8707823c40584f6aae948
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M configure.ac
    A m4/random.m4

  Log Message:
  -----------
  configure: Check for getrandom


  Commit: 130e6a5f6243eacd666eb5cb99a0b7e4d6f82774
      https://github.com/dovecot/core/commit/130e6a5f6243eacd666eb5cb99a0b7e4d6f82774
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

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

  Log Message:
  -----------
  lib-test: Remove rand state dump

It's not possible after next commit


  Commit: a147c9a2092a1b54bc5441fbaa43c56458cfd827
      https://github.com/dovecot/core/commit/a147c9a2092a1b54bc5441fbaa43c56458cfd827
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/lib/lib.c
    M src/lib/rand.c
    M src/lib/rand.h
    M src/lib/randgen.c

  Log Message:
  -----------
  lib: Replace rand_set_seed with srand

Makes following commits easier, and also
makes sure that rand() will get seeded when
used by other libraries.


  Commit: 5405ee4d314ccb4a9c3c0c20f3d9996a9eba5ee2
      https://github.com/dovecot/core/commit/5405ee4d314ccb4a9c3c0c20f3d9996a9eba5ee2
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/lib/Makefile.am
    M src/lib/lib.c
    M src/lib/lib.h
    M src/lib/rand.c
    R src/lib/rand.h

  Log Message:
  -----------
  lib: Replace rand.c with i_rand function

Replacement for rand


  Commit: 8045f6e30e98b009b85fcd6cc8d1bdc90524a556
      https://github.com/dovecot/core/commit/8045f6e30e98b009b85fcd6cc8d1bdc90524a556
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/lib/randgen.c
    M src/lib/randgen.h

  Log Message:
  -----------
  lib: Use best available random number generator

The best available method is used from short list of
getrandom, arc4random or reading /dev/urandom


  Commit: 62461eb609e1d852e027cf4e07d30d51288678a2
      https://github.com/dovecot/core/commit/62461eb609e1d852e027cf4e07d30d51288678a2
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/auth/auth-request.c
    M src/director/director-test.c
    M src/director/test-user-directory.c
    M src/doveadm/dsync/test-dsync-mailbox-tree-sync.c
    M src/lib-compression/test-compression.c
    M src/lib-dict/test-dict-client.c
    M src/lib-fs/fs-randomfail.c
    M src/lib-fts/test-fts-tokenizer.c
    M src/lib-index/test-mail-index-transaction-update.c
    M src/lib-index/test-mail-transaction-log-file.c
    M src/lib-mail/test-istream-header-filter.c
    M src/lib-mail/test-mail-html2text.c
    M src/lib-mail/test-message-header-decode.c
    M src/lib-mail/test-message-header-hash.c
    M src/lib-master/master-login-auth.c
    M src/lib-master/test-master-service-settings-cache.c
    M src/lib-storage/index/mbox/mbox-lock.c
    M src/lib-test/test-istream.c
    M src/lib/file-dotlock.c
    M src/lib/net.c
    M src/lib/test-array.c
    M src/lib/test-base32.c
    M src/lib/test-base64.c
    M src/lib/test-buffer.c
    M src/lib/test-data-stack.c
    M src/lib/test-hash.c
    M src/lib/test-istream-concat.c
    M src/lib/test-istream-crlf.c
    M src/lib/test-istream-seekable.c
    M src/lib/test-istream-tee.c
    M src/lib/test-ostream-buffer.c
    M src/lib/test-ostream-file.c
    M src/lib/test-priorityq.c
    M src/lib/test-seq-range-array.c
    M src/lib/test-strnum.c
    M src/lib/test-unichar.c
    M src/lib/timing.c
    M src/login-common/login-proxy.c
    M src/login-common/main.c
    M src/master/main.c
    M src/master/service-monitor.c

  Log Message:
  -----------
  global: Replace rand with i_rand


  Commit: b082469affbc99c79c1f4b07fda04d8dfc9cbf4a
      https://github.com/dovecot/core/commit/b082469affbc99c79c1f4b07fda04d8dfc9cbf4a
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/lib/compat.h

  Log Message:
  -----------
  lib: Warn if rand is used


  Commit: 21f76ca1a50182b44f45aee8ae854f06a15264a0
      https://github.com/dovecot/core/commit/21f76ca1a50182b44f45aee8ae854f06a15264a0
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/lib/timing.c

  Log Message:
  -----------
  lib: Simplify timing_add_usecs

i_rand is guaranteed to return 32 bit integer


  Commit: 9e0f35dcc277e3f55da306519738e5ca3499a2b6
      https://github.com/dovecot/core/commit/9e0f35dcc277e3f55da306519738e5ca3499a2b6
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/auth/main.c
    M src/dict/main.c
    M src/doveadm/doveadm-pw.c
    M src/imap-urlauth/imap-urlauth-worker.c
    M src/imap/main.c
    M src/lib-dcrypt/test-crypto.c
    M src/lib-dcrypt/test-stream.c
    M src/login-common/main.c
    M src/plugins/apparmor/apparmor-plugin.c
    M src/plugins/mail-crypt/fs-crypt-common.c
    M src/plugins/mail-crypt/mail-crypt-plugin.c
    M src/plugins/mail-crypt/test-mail-global-key.c
    M src/plugins/mail-crypt/test-mail-key.c
    M src/plugins/var-expand-crypt/test-var-expand-crypt.c

  Log Message:
  -----------
  global: Remove random_init/random_deinit calls

lib already initializes it.


  Commit: 2a628a8c90839439baff5b45116f89f2b3cd9e37
      https://github.com/dovecot/core/commit/2a628a8c90839439baff5b45116f89f2b3cd9e37
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-09-07 (Thu, 07 Sep 2017)

  Changed paths:
    M src/doveadm/doveadm-sis.c
    M src/lib-compression/test-compression.c
    M src/lib-dcrypt/test-stream.c
    M src/lib-storage/index/mbox/mbox-save.c
    M src/lib-storage/list/mailbox-list-delete.c
    M src/lib/randgen.h
    M src/lib/safe-mkstemp.c
    M src/lib/test-ostream-buffer.c
    M src/lib/test-ostream-file.c

  Log Message:
  -----------
  global: Replace random_fill_weak with random_fill

They are now the same thing


Compare: https://github.com/dovecot/core/compare/b67974c4b89a...2a628a8c9083


More information about the dovecot-cvs mailing list