[dovecot/core] a062bf: ipc: Change ipc socket's owner to $default_interna...

GitHub noreply at github.com
Mon Mar 12 11:00:34 EET 2018


  Branch: refs/heads/master-2.3
  Home:   https://github.com/dovecot/core
  Commit: a062bf63df0564c1c3fe1761f7c837b003f6ce96
      https://github.com/dovecot/core/commit/a062bf63df0564c1c3fe1761f7c837b003f6ce96
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/ipc/ipc-settings.c

  Log Message:
  -----------
  ipc: Change ipc socket's owner to $default_internal_user

This is mainly used by director process, which runs as
$default_internal_user. This setting change is always required for director
installations. Also the ipc process itself is already running as
$default_internal_user so this should be a rather safe change.


  Commit: b44d1a08c1d9408ae599c7e48e9a01a346b438e5
      https://github.com/dovecot/core/commit/b44d1a08c1d9408ae599c7e48e9a01a346b438e5
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib/ostream.h

  Log Message:
  -----------
  lib: Add o_stream_uncork_flush() to both uncork and flush


  Commit: 9646fef924dd3627fb86bcf43870bc4fd39824fc
      https://github.com/dovecot/core/commit/9646fef924dd3627fb86bcf43870bc4fd39824fc
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-server-connection.c
    M src/lib-smtp/smtp-server-reply.c

  Log Message:
  -----------
  lib-smtp: server: Use the stream_errno to evaluate output stream errors.

Code was using global errno.


  Commit: cc09ce4307ac207e2fa7ceaff959849545f69d55
      https://github.com/dovecot/core/commit/cc09ce4307ac207e2fa7ceaff959849545f69d55
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-server-connection.c
    M src/lib-smtp/smtp-server-private.h

  Log Message:
  -----------
  lib-smtp: server: Handle output stream errors in a separate function.


  Commit: a7bff44c8d01e2cf7ffc50181466f9124effa280
      https://github.com/dovecot/core/commit/a7bff44c8d01e2cf7ffc50181466f9124effa280
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-server-cmd-starttls.c

  Log Message:
  -----------
  lib-smtp: server: STARTTLS command: Properly handle output stream flush error.


  Commit: 4a823265de6a5a2147a672ff159a224a234e1559
      https://github.com/dovecot/core/commit/4a823265de6a5a2147a672ff159a224a234e1559
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-server-connection.c

  Log Message:
  -----------
  lib-smtp: server: Flush and check output for errors after uncorking.

Otherwise, a disconnection event may be missed.


  Commit: c116e38a0322362fc97d2b7fd7a78fd8c70aad14
      https://github.com/dovecot/core/commit/c116e38a0322362fc97d2b7fd7a78fd8c70aad14
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-server-private.h

  Log Message:
  -----------
  lib-smtp: server: Remove undefined smtp_server_reply_send_more() from smtp-server-private.h.


  Commit: 141e29982532e463592dd0d360939e9564373115
      https://github.com/dovecot/core/commit/141e29982532e463592dd0d360939e9564373115
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-server-connection.c
    M src/lib-smtp/smtp-server-private.h
    M src/lib-smtp/smtp-server-reply.c

  Log Message:
  -----------
  lib-smtp: server: Perform output stream error handling in one place.


  Commit: 3a6c4f95af8b6d38e597a99d302f275cb86f8eef
      https://github.com/dovecot/core/commit/3a6c4f95af8b6d38e597a99d302f275cb86f8eef
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-client-connection.c
    M src/lib-smtp/smtp-client-private.h

  Log Message:
  -----------
  lib-smtp: client: Handle output stream errors in a separate function.


  Commit: d6f83e1874ead8415365f07f616aa5fe2af0a0a1
      https://github.com/dovecot/core/commit/d6f83e1874ead8415365f07f616aa5fe2af0a0a1
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-client-connection.c

  Log Message:
  -----------
  lib-smtp: client: Flush and check output for errors after uncorking.

Otherwise, a disconnection event may be missed.


  Commit: 3fd43b09490617de6d5420a30760aaf15711e05e
      https://github.com/dovecot/core/commit/3fd43b09490617de6d5420a30760aaf15711e05e
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-client-command.c
    M src/lib-smtp/smtp-client-connection.c
    M src/lib-smtp/smtp-client-private.h

  Log Message:
  -----------
  lib-smtp: client: Perform output stream error handling in one place.


  Commit: 27d3781aa23ea8d03e9e8d9082b25c897d90edef
      https://github.com/dovecot/core/commit/27d3781aa23ea8d03e9e8d9082b25c897d90edef
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-client-connection.c

  Log Message:
  -----------
  lib-smtp: client: Uncork and flush the output stream explicitly after sending commands.

This allows detecting any output stream errors.


  Commit: aeadb8e4baaad9a5eec52e6356b5062a1da15e76
      https://github.com/dovecot/core/commit/aeadb8e4baaad9a5eec52e6356b5062a1da15e76
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-server-connection.c
    M src/lib-http/http-server-private.h

  Log Message:
  -----------
  lib-http: server: Handle output stream errors in a separate function.


  Commit: 5bf01fc9dcf371f1e37d5b8790baedaa9fb7c740
      https://github.com/dovecot/core/commit/5bf01fc9dcf371f1e37d5b8790baedaa9fb7c740
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-server-response.c

  Log Message:
  -----------
  lib-http: server: Flush and check output for errors after uncorking.

Otherwise, a disconnection event may be missed.


  Commit: 8acedb011efe7aa80b1d29a00e766cb0e2d34d30
      https://github.com/dovecot/core/commit/8acedb011efe7aa80b1d29a00e766cb0e2d34d30
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-server-connection.c
    M src/lib-http/http-server-private.h
    M src/lib-http/http-server-response.c

  Log Message:
  -----------
  lib-http: server: Perform output stream error handling in one place.


  Commit: e68885782fe0aa2d562da349cdb3103dfa17e0a0
      https://github.com/dovecot/core/commit/e68885782fe0aa2d562da349cdb3103dfa17e0a0
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-server-response.c

  Log Message:
  -----------
  lib-http: server: Make sure output is used only when valid in http_server_response_send_real().

This avoids the need to hold a reference to it.


  Commit: 0c89791aef0f029473d8449f45b1fa201f25dd82
      https://github.com/dovecot/core/commit/0c89791aef0f029473d8449f45b1fa201f25dd82
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-server-response.c

  Log Message:
  -----------
  lib-http: server: Simplified return code handling in http_server_response_send_real().


  Commit: 979d0f2370e90cf3068d853ae09d4d3b453e0e38
      https://github.com/dovecot/core/commit/979d0f2370e90cf3068d853ae09d4d3b453e0e38
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-client-request.c

  Log Message:
  -----------
  lib-http: client: Flush and check output for errors after uncorking.

Otherwise, a disconnection event may be missed.


  Commit: a3bf9c8acd6f7dcb47656d10475396eae80979a1
      https://github.com/dovecot/core/commit/a3bf9c8acd6f7dcb47656d10475396eae80979a1
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-client-connection.c
    M src/lib-http/http-client-private.h

  Log Message:
  -----------
  lib-http: client: Handle output stream errors in a separate function.


  Commit: 1aa3d385113e8161abbe1a1bdd34fadb70c55896
      https://github.com/dovecot/core/commit/1aa3d385113e8161abbe1a1bdd34fadb70c55896
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-client-connection.c
    M src/lib-http/http-client-private.h

  Log Message:
  -----------
  lib-http: client: Make http_client_connection_lost() available outside http-client-connection.c.


  Commit: 38d87d0244c433c81c61d1a5277043fcf4a6a87b
      https://github.com/dovecot/core/commit/38d87d0244c433c81c61d1a5277043fcf4a6a87b
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-client-connection.c
    M src/lib-http/http-client-private.h
    M src/lib-http/http-client-request.c

  Log Message:
  -----------
  lib-http: client: Perform output stream error handling in one place.


  Commit: c13f150f61b32d5d42ff30b564be1056a0776d34
      https://github.com/dovecot/core/commit/c13f150f61b32d5d42ff30b564be1056a0776d34
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

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

  Log Message:
  -----------
  lib-http: client: Hold reference to the connection while sending the next request.

Subsequent changes may cause the connection to be destroyed while sending.


  Commit: c742c97d1c2d99ff14768254dcc3e3379657ad2d
      https://github.com/dovecot/core/commit/c742c97d1c2d99ff14768254dcc3e3379657ad2d
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

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

  Log Message:
  -----------
  lib-http: client: Continue sending request payload in a separate function.


  Commit: e1c3c710723fa3fe8f254ab5ffe2f04067cbec15
      https://github.com/dovecot/core/commit/e1c3c710723fa3fe8f254ab5ffe2f04067cbec15
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

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

  Log Message:
  -----------
  lib-http: client: Hold reference to the connection while continuing request payload.

Subsequent changes may cause the connection to be destroyed while sending.


  Commit: 98728242fe0aef3a3ecd8b0c93fe98884fc16399
      https://github.com/dovecot/core/commit/98728242fe0aef3a3ecd8b0c93fe98884fc16399
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

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

  Log Message:
  -----------
  lib-http: client: Uncork and flush the output stream explicitly after continuing request payload.

This allows detecting any output stream errors.


  Commit: 42d59cb71ca78a2cdc3fc3a4ccef18ccef331e6c
      https://github.com/dovecot/core/commit/42d59cb71ca78a2cdc3fc3a4ccef18ccef331e6c
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-client-request.c

  Log Message:
  -----------
  lib-http: client: Make sure output is used only when valid in http_client_request_send_real().


  Commit: 2164b0f0abbb9b3f7c1b29ee409998212e404e31
      https://github.com/dovecot/core/commit/2164b0f0abbb9b3f7c1b29ee409998212e404e31
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-http/http-client-request.c

  Log Message:
  -----------
  lib-http: client: Simplified return code handling in http_client_request_send_real().


  Commit: eaff427e5108eb03ded2815281d53d2bf52e3371
      https://github.com/dovecot/core/commit/eaff427e5108eb03ded2815281d53d2bf52e3371
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib-smtp/smtp-server-cmd-mail.c

  Log Message:
  -----------
  lib-smtp: server: Remove inappropriate assert from MAIL command.

When the MAIL command is next to reply, it is possible to have RCPT commands
that are still pending.


  Commit: 5cf6951e37bd37bb11b3335a3dbd029065143454
      https://github.com/dovecot/core/commit/5cf6951e37bd37bb11b3335a3dbd029065143454
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/master/master-settings.c
    M src/master/master-settings.h

  Log Message:
  -----------
  master: Add default_internal_group setting, defaulting to "dovecot"

It's expected that this is the primary group of the default_internal_user.

This group will be used to provide access to sockets that are generally
required by all Dovecot processes, but aren't safe enough to be allowed
completely open access from untrusted processes.


  Commit: 51cc5e29cb4399d9c0537275a777f268495c6aaa
      https://github.com/dovecot/core/commit/51cc5e29cb4399d9c0537275a777f268495c6aaa
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/dict/dict-settings.c

  Log Message:
  -----------
  dict: Change dict and dict-async default socket permissions to allow default_internal_group

Many mail processes need to talk to dict. This makes it easier to enable
dict without having to configure permissions.


  Commit: cc84498d35ba475ea218f9bdd66e1c23e40026c7
      https://github.com/dovecot/core/commit/cc84498d35ba475ea218f9bdd66e1c23e40026c7
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/stats/stats-settings.c

  Log Message:
  -----------
  stats: Change stats-writer default socket permissions to allow default_internal_group

It's important that all dovecot processes can send statistics to the stats
process.


  Commit: 86e748326fb69c6cb184556a63d7ee693717b735
      https://github.com/dovecot/core/commit/86e748326fb69c6cb184556a63d7ee693717b735
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/imap-hibernate/imap-hibernate-settings.c

  Log Message:
  -----------
  imap-hibernate: Change imap-hibernate default socket permissions to allow default_internal_group

It would be enough to allow only imap processes access to it, but it
shouldn't really harm to allow other processes access to it also.


  Commit: 12896fac942c450d2367149ec02fa75e757a1969
      https://github.com/dovecot/core/commit/12896fac942c450d2367149ec02fa75e757a1969
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/lib/restrict-access.c

  Log Message:
  -----------
  lib: restrict_access_by_env() - Preserve RESTRICT_SETEXTRAGROUPS if root isn't dropped

This way service { extra_groups } is preserved for the whole duration of the
process lifetime (e.g. lmtp, doveadm)


  Commit: 3d2dd93d0e057280ea3569d3e37ed91ae63f57f6
      https://github.com/dovecot/core/commit/3d2dd93d0e057280ea3569d3e37ed91ae63f57f6
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-03-12 (Mon, 12 Mar 2018)

  Changed paths:
    M src/doveadm/doveadm-settings.c
    M src/imap-urlauth/imap-urlauth-worker-settings.c
    M src/imap/imap-settings.c
    M src/indexer/indexer-worker-settings.c
    M src/lmtp/lmtp-settings.c
    M src/pop3/pop3-settings.c
    M src/submission/submission-settings.c

  Log Message:
  -----------
  global: Set extra_groups=$default_internal_group for various services

Services with user=$default_internal_user are expected to already set the
group properly. This change is adding the group for mail processes.


Compare: https://github.com/dovecot/core/compare/9f2fe2782224...3d2dd93d0e05


More information about the dovecot-cvs mailing list