Skip to content

Upgrade SMTP client to use the (new) settings infrastructure - #1701

Open
sirainen wants to merge 5 commits into
dovecot:mainfrom
sirainen:smtp-client-settings-auto
Open

sirainen wants to merge 5 commits into
dovecot:mainfrom
sirainen:smtp-client-settings-auto

Conversation

@sirainen

Copy link
Copy Markdown
Contributor

DOV-9262

@sirainen
sirainen force-pushed the smtp-client-settings-auto branch 3 times, most recently from 327a7cd to 754b166 Compare October 21, 2026 20:12
@stephanbosch

Copy link
Copy Markdown
Contributor

Copied from core mr:

Because lmtp_proxy is also a filter name, this setting is written enabled = yes inside lmtp_proxy { } (the filter prefix is stripped), and doveconf prints it that way in filter context (see the cluster group defaults in the tester's expected.conf.j2: lmtp_proxy { enabled = yes }). Not wrong, but documentation and the upgrade notes should mention both spellings, or the key could be named so it doesn't collide with the filter prefix.

@stephanbosch

Copy link
Copy Markdown
Contributor

Copied from core mr:

The new local: / proxy: prefixes end up in every recipient and user log line of lmtp (the tester had to loosen about ten log_expect patterns and the lmtp-verbose-replies ignores-log for it). That is a user-visible log format change for anyone parsing lmtp logs, so it needs an upgrade note.

These are the generic settings of lib-smtp's SMTP and LMTP client. They are
used inside the submission_relay, mail_submit and lmtp_proxy filters.
…y filters

The SMTP client settings changes move the outgoing SMTP/LMTP connection
settings into filters that hold the generic smtp_client_*/lmtp_client_*,
client_auth_* and ssl_client_* settings:

- submission_relay_* -> submission_relay { smtp_client_* / client_auth_* /
  ssl_client_require_valid_cert }. submission_relay_max_idle_time never did
  anything and is deprecated.
- submission_host/submission_ssl -> mail_submit { smtp_client_host /
  smtp_client_port / smtp_client_ssl }, submission_timeout ->
  mail_submit_timeout, and sendmail_path -> mail_submit { execute sendmail
  { } }. The host:port syntax of submission_host is gone.
- lmtp_proxy (boolean) -> lmtp_proxy_enabled, since lmtp_proxy { } is now the
  filter for the lmtp_client_* settings, and lmtp_proxy_rawlog_dir ->
  lmtp_proxy { lmtp_client_rawlog_dir }. A new lmtp_local { } filter scopes
  settings to local deliveries.

Also list submission_relay and mail_submit as client_auth users in the
client_auth and ssl_client_require_valid_cert descriptions.
The submission relay and mail_submit SMTP clients now use the same
client_auth_* settings. Add them to the client list.
…tings

submission_host and sendmail_path are now configured inside mail_submit { },
lmtp_proxy is lmtp_proxy_enabled, and the rawlog settings moved inside the
lmtp_proxy and submission_relay filters. Add a relay example with
authentication to the submission page.
@sirainen
sirainen force-pushed the smtp-client-settings-auto branch from 754b166 to 2cb30bc Compare November 4, 2026 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants