[dovecot/core] d906a0: auth: Code cleanup - Move userdb extra fields expo...

GitHub noreply at github.com
Mon Feb 6 15:00:33 UTC 2017


  Branch: refs/heads/master-2.2
  Home:   https://github.com/dovecot/core
  Commit: d906a02a99427769ce1e683b575a19961dec9656
      https://github.com/dovecot/core/commit/d906a02a99427769ce1e683b575a19961dec9656
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

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

  Log Message:
  -----------
  auth: Code cleanup - Move userdb extra fields exporting to its own function


  Commit: 8e89229c35af286aa91ae0d92b09ac07fc0f1473
      https://github.com/dovecot/core/commit/8e89229c35af286aa91ae0d92b09ac07fc0f1473
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

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

  Log Message:
  -----------
  auth: Pass through passdb extra fields to auth-worker requests


  Commit: d03fb40329c6531cae42b9ba252863ab2c849614
      https://github.com/dovecot/core/commit/d03fb40329c6531cae42b9ba252863ab2c849614
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-dict/dict-sql.c

  Log Message:
  -----------
  dict-sql: Move USING TIMESTAMP to correct location for INSERTs


  Commit: 8adfdb0f446941dad4c23c6db34c2a42705930be
      https://github.com/dovecot/core/commit/8adfdb0f446941dad4c23c6db34c2a42705930be
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M configure.ac
    M src/lib-ssl-iostream/iostream-openssl-context.c

  Log Message:
  -----------
  lib-ssl-iostream: Use RSA_generate_key_ex() if it exists

This avoids deprecation warnings about RSA_generate_key() in OpenSSL v1.1.


  Commit: 905553cf20f81b4a90ba3f027e40f053cc21fbbd
      https://github.com/dovecot/core/commit/905553cf20f81b4a90ba3f027e40f053cc21fbbd
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M configure.ac
    M src/lib-ssl-iostream/iostream-openssl-common.c
    M src/lib-ssl-iostream/iostream-openssl.h

  Log Message:
  -----------
  lib-ssl-iostream: Use ASN1_STRING_get0_data() if it exists

This avoids deprecation warnings about ASN1_STRING_data() in OpenSSL v1.1.


  Commit: 6c7487039ce73d7229fb5f28ec372cde67b274b6
      https://github.com/dovecot/core/commit/6c7487039ce73d7229fb5f28ec372cde67b274b6
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M configure.ac
    M src/lib-ssl-iostream/dovecot-openssl-common.c

  Log Message:
  -----------
  lib-ssl-iostream: Detect OpenSSL memory functions' parameters via configure

The version number check doesn't work correctly for LibreSSL.


  Commit: 92ae85d6afda5d148e86bfbbbeac7164c4ab2c3d
      https://github.com/dovecot/core/commit/92ae85d6afda5d148e86bfbbbeac7164c4ab2c3d
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M configure.ac
    M src/lib-ssl-iostream/dovecot-openssl-common.c

  Log Message:
  -----------
  lib-ssl-iostream: Detect OPENSSL_cleanup() via configure

It's ugly to have both OpenSSL version number check and a special LibreSSL
check.


  Commit: 5cc5edff30959d11888b9e04ba8204ddf27cc8e4
      https://github.com/dovecot/core/commit/5cc5edff30959d11888b9e04ba8204ddf27cc8e4
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

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

  Log Message:
  -----------
  lib-ssl-iostream: Call OBJ_cleanup() for all OpenSSL versions

Just to reduce the #if checks that uglify the code.


  Commit: 5f07a069f3913c27af6d5d6849f7b633bccb7a87
      https://github.com/dovecot/core/commit/5f07a069f3913c27af6d5d6849f7b633bccb7a87
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M configure.ac
    M src/lib-ssl-iostream/dovecot-openssl-common.c

  Log Message:
  -----------
  lib-ssl-iostream: Detect whether to call ERR_remove_[thread_]state() via configure


  Commit: 9483ccd557a1c22555c9823312920b2905e72ab9
      https://github.com/dovecot/core/commit/9483ccd557a1c22555c9823312920b2905e72ab9
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-dcrypt/test-crypto.c
    M src/lib-dcrypt/test-stream.c

  Log Message:
  -----------
  lib-dcrypt: If dcrypt can't be initialized, log also the reason.

This is very helpful when debugging linking issues.


  Commit: 25bc04eaef7d4a1fc5d6456d5162ce37b1909ddb
      https://github.com/dovecot/core/commit/25bc04eaef7d4a1fc5d6456d5162ce37b1909ddb
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-dcrypt/Makefile.am

  Log Message:
  -----------
  lib-dcrypt: Don't link liblib.la to libdcrypt_openssl.so

At best this does nothing, at worst (like with OSX) it duplicates the
entire liblib and creates split state between the two instances.


  Commit: 6ceb8107900005b1c777bcc56fb914ef1e8254fc
      https://github.com/dovecot/core/commit/6ceb8107900005b1c777bcc56fb914ef1e8254fc
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-dcrypt/Makefile.am

  Log Message:
  -----------
  lib-dcrypt: Remove unnecessary -shared link flag

Not sure if this is harmful, but since no other plugin uses this it's not
needed either.


  Commit: 0f3542d848014670fe51275657773e2f36f27b1f
      https://github.com/dovecot/core/commit/0f3542d848014670fe51275657773e2f36f27b1f
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-dcrypt/Makefile.am

  Log Message:
  -----------
  lib-dcrypt: Link unit tests with libssl_iostream.la

libssl_iostream_openssl.so requires this, and it doesn't get added from
anywhere automatically.


  Commit: f82283cadae5f6b0630353936ee518e566429cee
      https://github.com/dovecot/core/commit/f82283cadae5f6b0630353936ee518e566429cee
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-ssl-iostream/Makefile.am

  Log Message:
  -----------
  lib-ssl-iostream: Remove empty $(ssl_sources) from Makefile


  Commit: 313edff9feaef4199fcfa74fad87189ec7ccfba7
      https://github.com/dovecot/core/commit/313edff9feaef4199fcfa74fad87189ec7ccfba7
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-dcrypt/Makefile.am
    M src/lib-ssl-iostream/Makefile.am

  Log Message:
  -----------
  lib-ssl-iostream: Remove libdovecot_openssl_common.la

Using such a library results in the same code being duplicated (in OSX) in
both libssl_iostream_openssl.so and libdcrypt_openssl.so.  This breaks the
idea of openssl_init_refcount, because each one will have their own one.

libdcrypt_openssl.so now links to libssl_iostream_openssl.so, which
shouldn't really be a problem, because lib-ssl-iostream is part of the core
libdovecot.so already. It would have been possible to also install
libdovecot_openssl_common.so and link it to both libssl_iostream_openssl.so
and libdcrypt_openssl.so, but that seems unnecessarily complicated.


  Commit: 518b81bfe00a4217c68cb6426e15d74f7fea270d
      https://github.com/dovecot/core/commit/518b81bfe00a4217c68cb6426e15d74f7fea270d
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

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

  Log Message:
  -----------
  lib-storage: Don't unnecessarily duplicate user's all setting strings

user->unexpanded_set and user->set have the same life-time, so they can
point to same strings.


  Commit: b5e88b7efc276645485fa8b95250ad439607fca8
      https://github.com/dovecot/core/commit/b5e88b7efc276645485fa8b95250ad439607fca8
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

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

  Log Message:
  -----------
  lib-storage: Don't duplicate service user's settings into mail_user

The mail_storage_service_user.user_set isn't used afterwards, so it can be
directly used to avoid wasting memory.


  Commit: 2c4a553a7fde3af1d406df9b6eaa29ec4d2e07f6
      https://github.com/dovecot/core/commit/2c4a553a7fde3af1d406df9b6eaa29ec4d2e07f6
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib/compat.h

  Log Message:
  -----------
  lib: Make sure NULL is defined to be ((void *)0)

This avoids us having to do explicit (void *)NULL casts in e.g.
io_add(..., NULL) context parameter.


  Commit: 48fde2a7136d61f173d9d509150519c61d7c629a
      https://github.com/dovecot/core/commit/48fde2a7136d61f173d9d509150519c61d7c629a
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

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

  Log Message:
  -----------
  auth: Handle delayed credentials identically in auth-workers


  Commit: 9b1bec856f8b2c33f1190fde169b67e489802530
      https://github.com/dovecot/core/commit/9b1bec856f8b2c33f1190fde169b67e489802530
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/lib-ssl-iostream/iostream-openssl-context.c

  Log Message:
  -----------
  lib-ssl-iostream: Fix memory leak in RSA_generate_key_ex() usage


  Commit: 17b83d9d34957145ad1b4f22c106a612c8948ee8
      https://github.com/dovecot/core/commit/17b83d9d34957145ad1b4f22c106a612c8948ee8
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

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

  Log Message:
  -----------
  imap: Don't send empty FETCH () on failure

It violates IMAP RFC. Send FETCH (UID n) instead.


  Commit: 7b87f615282780e3bcd3f16188455d639da75f89
      https://github.com/dovecot/core/commit/7b87f615282780e3bcd3f16188455d639da75f89
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/imap/cmd-close.c

  Log Message:
  -----------
  imap: Free search updates on CLOSE


  Commit: e1997d40e25a493415ff574d1d09ee30ba06430d
      https://github.com/dovecot/core/commit/e1997d40e25a493415ff574d1d09ee30ba06430d
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/imap/cmd-close.c
    M src/imap/cmd-logout.c
    M src/imap/cmd-select.c
    M src/imap/cmd-unselect.c
    M src/imap/imap-client.c
    M src/imap/imap-commands-util.c
    M src/imap/imap-commands-util.h

  Log Message:
  -----------
  imap: Share mailbox closing code in SELECT/UNSELECT/CLOSE/LOGOUT/deinit


  Commit: 8fe64e2af5b6ce7b6ffa6453beaf569dca089e59
      https://github.com/dovecot/core/commit/8fe64e2af5b6ce7b6ffa6453beaf569dca089e59
  Author: Martti Rannanjärvi <martti.rannanjarvi at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/imap/cmd-fetch.c
    M src/lib-imap/imap-resp-code.h

  Log Message:
  -----------
  lib-imap, imap: BINARY [UNKNOWNCTE] to [PARSE]


  Commit: f6170729cebfa2e998b4578924c60b9affb29258
      https://github.com/dovecot/core/commit/f6170729cebfa2e998b4578924c60b9affb29258
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/imap/cmd-fetch.c
    M src/imap/imap-client.h
    M src/imap/imap-commands-util.c
    M src/imap/imap-fetch.c
    M src/imap/imap-fetch.h
    M src/imap/imap-settings.c
    M src/imap/imap-settings.h

  Log Message:
  -----------
  imap: Add imap_fetch_failure setting

This controls what happens when FETCH fails for some mails. The possible
values are:

disconnect-immediately: This is the original behavior. Whenever FETCH
fails for a mail, the FETCH is aborted and client is disconnected.

disconnect-after: The FETCH runs for all the requested mails, skipping
any mails that returned failures, but at the end the client is still
disconnected.

no-after: The FETCH runs for all the requested mails, skipping any mails
that returned failures. At the end tagged NO reply is returned. If the
client attempts to FETCH the same failed mail more than once, the client
is disconnected. This is to avoid clients from going into infinite loops
trying to FETCH a broken mail.


  Commit: 3b1a82eed8708d63ac5869d35a847dbaf0d54221
      https://github.com/dovecot/core/commit/3b1a82eed8708d63ac5869d35a847dbaf0d54221
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-06 (Mon, 06 Feb 2017)

  Changed paths:
    M src/indexer/indexer.c

  Log Message:
  -----------
  indexer: Don't send more requests directly from worker status callback

This causes assert-crashes when workers disconnect while having multiple
requests:

indexer: Error: Indexer worker disconnected, discarding 2 requests for user at domain
indexer: Panic: file indexer.c: line 69 (queue_try_send_more): assertion failed: (worker_connection_is_connected(conn))


Compare: https://github.com/dovecot/core/compare/9c65e8699036...3b1a82eed870


More information about the dovecot-cvs mailing list