]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
22 months agofts: Don't ignore parent mail_precache() failure
Timo Sirainen [Mon, 9 Sep 2024 15:45:59 +0000 (18:45 +0300)] 
fts: Don't ignore parent mail_precache() failure

22 months agodovecot.service.in: Add time-sync.target dependency
Timo Sirainen [Tue, 17 Sep 2024 09:58:57 +0000 (12:58 +0300)] 
dovecot.service.in: Add time-sync.target dependency

This way Dovecot won't be started before time has been synchronized.
systemd-time-wait-sync.service also needs to be enabled.

22 months agodoc: Fix cp usage to be more portable when installing html docs
Aki Tuomi [Mon, 16 Sep 2024 10:54:39 +0000 (13:54 +0300)] 
doc: Fix cp usage to be more portable when installing html docs

22 months agolib-dcrypt: Replace safe_memset() with buffer_clear_safe() for buffers
Aki Tuomi [Fri, 6 Sep 2024 12:06:21 +0000 (15:06 +0300)] 
lib-dcrypt: Replace safe_memset() with buffer_clear_safe() for buffers

22 months agomail-crypt: Fix detecting chacha20-poly1305 in algorithm
Aki Tuomi [Fri, 6 Sep 2024 12:00:33 +0000 (15:00 +0300)] 
mail-crypt: Fix detecting chacha20-poly1305 in algorithm

22 months agolib-dcrypt: iostream - Support using same cipher algorithm for key encryption
Aki Tuomi [Fri, 6 Sep 2024 10:13:15 +0000 (13:13 +0300)] 
lib-dcrypt: iostream - Support using same cipher algorithm for key encryption

22 months agolib-oauth2: Link dcrypt-openssl directly to unit test
Timo Sirainen [Fri, 6 Sep 2024 10:26:20 +0000 (13:26 +0300)] 
lib-oauth2: Link dcrypt-openssl directly to unit test

This fixes an issue with runtime linking:
Error: No functional dcrypt backend found - skipping some tests:
Couldn't load required plugin libdcrypt_openssl.so: dlopen() failed:
libssl_iostream_openssl.so: undefined symbol: connection_is_valid_dns_name

22 months agolib-dcrypt: Build libdcrypt_openssl_static.la
Timo Sirainen [Fri, 6 Sep 2024 10:23:42 +0000 (13:23 +0300)] 
lib-dcrypt: Build libdcrypt_openssl_static.la

22 months agolib-dcrypt: dcrypt-private.h - Fix dependencies when including directly
Timo Sirainen [Fri, 6 Sep 2024 10:23:18 +0000 (13:23 +0300)] 
lib-dcrypt: dcrypt-private.h - Fix dependencies when including directly

22 months agolib: Avoid wrongly thinking time moved forwards for larger ioloop wait times
Timo Sirainen [Thu, 12 Sep 2024 12:39:38 +0000 (15:39 +0300)] 
lib: Avoid wrongly thinking time moved forwards for larger ioloop wait times

23 months agolib: istream-failure-at - Never set readable_fd
Timo Sirainen [Wed, 11 Sep 2024 04:15:11 +0000 (07:15 +0300)] 
lib: istream-failure-at - Never set readable_fd

Otherwise o_stream_send_istream() could bypass istream-failure-at's read()
by using sendfile().

23 months agolib-program-client: test-program-client-unix - Change to NULL initialization
Timo Sirainen [Fri, 6 Sep 2024 10:32:30 +0000 (13:32 +0300)] 
lib-program-client: test-program-client-unix - Change to NULL initialization

This makes scan-build happy.

23 months agologin-common, imap-login: Add proxy_no_multiplex passdb extra field
Timo Sirainen [Fri, 6 Sep 2024 12:08:35 +0000 (15:08 +0300)] 
login-common, imap-login: Add proxy_no_multiplex passdb extra field

23 months agoconfigure: Fix LIBDOVECOT_LUA for static builds
Timo Sirainen [Fri, 6 Sep 2024 07:28:45 +0000 (10:28 +0300)] 
configure: Fix LIBDOVECOT_LUA for static builds

23 months agolib-lua: Build also libdlua.la
Timo Sirainen [Fri, 6 Sep 2024 07:22:20 +0000 (10:22 +0300)] 
lib-lua: Build also libdlua.la

This can be used for static linking.

23 months agoglobal: Makefile.am - Use LIBDOVECOT* variables where possible
Timo Sirainen [Fri, 6 Sep 2024 07:18:55 +0000 (10:18 +0300)] 
global: Makefile.am - Use LIBDOVECOT* variables where possible

It behaves differently when using static linking.

23 months agolib-dict-backend: Makefile.am - Use BUILT_SOURCES instead of rm in distclean hook
Timo Sirainen [Fri, 6 Sep 2024 06:50:12 +0000 (09:50 +0300)] 
lib-dict-backend: Makefile.am - Use BUILT_SOURCES instead of rm in distclean hook

23 months agodovecot-config: Add LIBDOVECOT_OPENSSL[_DEPS]
Timo Sirainen [Thu, 5 Sep 2024 16:03:44 +0000 (19:03 +0300)] 
dovecot-config: Add LIBDOVECOT_OPENSSL[_DEPS]

This is usable only when linking statically.

This change also removes LIBDOVECOT_SSL[_DEPS], which weren't used for anything.

23 months agostats: Change discrete modifiers to be %variables
Timo Sirainen [Tue, 3 Sep 2024 07:09:41 +0000 (10:09 +0300)] 
stats: Change discrete modifiers to be %variables

%{value} and %{domain} variables can be used.

23 months agostats: Fix group_by discrete modifiers to actually work
Timo Sirainen [Mon, 2 Sep 2024 20:44:01 +0000 (23:44 +0300)] 
stats: Fix group_by discrete modifiers to actually work

23 months agostats: Move label_by_mod_str()
Timo Sirainen [Mon, 2 Sep 2024 20:43:17 +0000 (23:43 +0300)] 
stats: Move label_by_mod_str()

23 months agopop3: Logout format specifier 'u' is always empty
Aki Tuomi [Thu, 29 Aug 2024 10:32:07 +0000 (13:32 +0300)] 
pop3: Logout format specifier 'u' is always empty

Due to mistake in var_get_key() invocation, if 'u' key is used
the value is never populated. Call var_get_get_key() with correct
short char.

Broken in acfda38b75d0f0e899ef692fef01593bd56ed85e

23 months agoconfigure.ac: Fix wrong capability name
Aki Tuomi [Tue, 27 Aug 2024 10:05:09 +0000 (13:05 +0300)] 
configure.ac: Fix wrong capability name

23 months agolib-http: Move conn_type default value to switch block
Aki Tuomi [Tue, 27 Aug 2024 04:59:31 +0000 (07:59 +0300)] 
lib-http: Move conn_type default value to switch block

23 months agolib-program-client: Change to NULL initialization in test_program_input()
Aki Tuomi [Tue, 27 Aug 2024 04:58:36 +0000 (07:58 +0300)] 
lib-program-client: Change to NULL initialization in test_program_input()

23 months agovar-expand-crypt: Change to NULL initialization
Aki Tuomi [Tue, 27 Aug 2024 04:57:29 +0000 (07:57 +0300)] 
var-expand-crypt: Change to NULL initialization

Found by static analysis

23 months agolib-dcrypt: Ensure pkey is loaded from point or bn
Aki Tuomi [Tue, 27 Aug 2024 04:56:08 +0000 (07:56 +0300)] 
lib-dcrypt: Ensure pkey is loaded from point or bn

23 months agodovecot-config: Add DOVECOT_PRO_BUILD variable
Aki Tuomi [Mon, 26 Aug 2024 12:28:19 +0000 (15:28 +0300)] 
dovecot-config: Add DOVECOT_PRO_BUILD variable

23 months agoconfigure: Use https for support URL
Aki Tuomi [Mon, 26 Aug 2024 12:20:35 +0000 (15:20 +0300)] 
configure: Use https for support URL

23 months agoconfigure: Fix asset URL to be version specific
Aki Tuomi [Mon, 26 Aug 2024 12:20:07 +0000 (15:20 +0300)] 
configure: Fix asset URL to be version specific

23 months agolib-dict: dict_have_async_operations() - Ignore non-committed transactions
Timo Sirainen [Mon, 26 Aug 2024 12:30:02 +0000 (15:30 +0300)] 
lib-dict: dict_have_async_operations() - Ignore non-committed transactions

If the transaction isn't committed, it can't be waited on.

23 months agolib: events - Fix negative integer fields
Timo Sirainen [Fri, 23 Aug 2024 10:52:52 +0000 (13:52 +0300)] 
lib: events - Fix negative integer fields

23 months agolib-lua: http - Fix parent_event setting
Timo Sirainen [Thu, 22 Aug 2024 14:20:44 +0000 (17:20 +0300)] 
lib-lua: http - Fix parent_event setting

Broken by 85449f6a6cf3f0df1d63728ab107413436595b49

23 months agolib-lua: dlua_check_event() - Fix calling with negative arg
Timo Sirainen [Thu, 22 Aug 2024 14:20:30 +0000 (17:20 +0300)] 
lib-lua: dlua_check_event() - Fix calling with negative arg

23 months agolib-sql: cassandra - Remove ssl_verify=cert-dns
Timo Sirainen [Thu, 22 Aug 2024 09:29:54 +0000 (12:29 +0300)] 
lib-sql: cassandra - Remove ssl_verify=cert-dns

This has been deprecated by Cassandra, because it's vulnerable to MITM
attacks.

23 months agolib: ostream-file - Fix writing over IOV_MAX iovecs at a time
Timo Sirainen [Mon, 19 Aug 2024 07:49:14 +0000 (10:49 +0300)] 
lib: ostream-file - Fix writing over IOV_MAX iovecs at a time

The output offset became wrong, which either corrupted the written file, or
caused lseek() errors for non-seekable output streams.

This was likely a visible problem only with ostream-dot, used by doveadm
proxying and lib-smtp.

23 months agodoveadm: auth test/login - Print internal failures to stderr
Timo Sirainen [Wed, 14 Aug 2024 10:20:19 +0000 (13:20 +0300)] 
doveadm: auth test/login - Print internal failures to stderr

23 months agodoveadm: auth test/login - Return EX_TEMPFAIL on internal failures
Timo Sirainen [Wed, 14 Aug 2024 10:14:06 +0000 (13:14 +0300)] 
doveadm: auth test/login - Return EX_TEMPFAIL on internal failures

Previously EX_NOPERM was returned, which was the same as for invalid
passwords.

23 months agoauth: Add auth_internal_failure_delay setting
Timo Sirainen [Wed, 14 Aug 2024 10:11:10 +0000 (13:11 +0300)] 
auth: Add auth_internal_failure_delay setting

When >0, delay before sending "internal failure" replies to auth clients.
The idea is to prevent clients from hammering the server with immediate
retries. Also, a random 0..50% extra delay is added on top of this delay
to try to prevent thundering herd issues.

23 months agoauth: auth_request_handle_passdb_callback() - Change return type to int
Timo Sirainen [Wed, 14 Aug 2024 08:49:38 +0000 (11:49 +0300)] 
auth: auth_request_handle_passdb_callback() - Change return type to int

This is needed by the next commit.

23 months agolib-imap-client: Fix IDLE timeout leak / crash
Timo Sirainen [Tue, 20 Aug 2024 06:45:46 +0000 (09:45 +0300)] 
lib-imap-client: Fix IDLE timeout leak / crash

23 months agologin-commmon: Add connection_limit reason for login_aborted
Timo Sirainen [Fri, 9 Aug 2024 07:38:46 +0000 (10:38 +0300)] 
login-commmon: Add connection_limit reason for login_aborted

When mail_max_userip_connections is reached, log it with connection_limit
reason rather than internal_failure.

23 months agolib-smtp: Replace "Aborted login by logging out" with "Logged out"
Timo Sirainen [Fri, 9 Aug 2024 07:19:16 +0000 (10:19 +0300)] 
lib-smtp: Replace "Aborted login by logging out" with "Logged out"

Similar to the login-common change, this also now shows up in logs as:
"Login aborted: Logged out"

23 months agologin-common: Replace "Aborted login by logging out" with "Logged out"
Timo Sirainen [Fri, 9 Aug 2024 06:58:32 +0000 (09:58 +0300)] 
login-common: Replace "Aborted login by logging out" with "Logged out"

With the new prefix change the old message became redundant. The full new
log message is: "Login aborted: Logged out"

23 months agologin-common: Add the event reason code to "Login aborted" log lines
Timo Sirainen [Fri, 9 Aug 2024 06:43:06 +0000 (09:43 +0300)] 
login-common: Add the event reason code to "Login aborted" log lines

This makes it easier to search the logs for the wanted errors.

23 months agologin-common: Log aborted logins with "Login aborted" prefix rather than "Disconnected"
Timo Sirainen [Fri, 9 Aug 2024 06:37:13 +0000 (09:37 +0300)] 
login-common: Log aborted logins with "Login aborted" prefix rather than "Disconnected"

This makes it easier to search the logs for login failures without seeing
post-login disconnections.

23 months agologin-common, submission-login: Simplify code whether to add Disconnected prefix
Timo Sirainen [Fri, 9 Aug 2024 06:35:22 +0000 (09:35 +0300)] 
login-common, submission-login: Simplify code whether to add Disconnected prefix

The logic was the same for all callers: Add the prefix only if the user
hadn't successfully logged in yet.

23 months agologin-common: Change "Login" log lines to "Logged in"
Timo Sirainen [Fri, 9 Aug 2024 06:24:53 +0000 (09:24 +0300)] 
login-common: Change "Login" log lines to "Logged in"

Previously it wasn't possible to search (with e.g. graylog) all lines from
login processes except the successful logins, because "NOT Login" would
still match e.g. "imap-login" prefix itself. Now it can work with
"NOT Logged".

23 months agoquota: Fix event/memory leak on invalid values for some quota settings
Timo Sirainen [Fri, 16 Aug 2024 07:36:33 +0000 (10:36 +0300)] 
quota: Fix event/memory leak on invalid values for some quota settings

23 months agoconfig: doveconf without parameters now outputs the same as -n
Timo Sirainen [Tue, 13 Aug 2024 06:45:40 +0000 (09:45 +0300)] 
config: doveconf without parameters now outputs the same as -n

The old behavior was the same as the -a parameter. The old behavior is
preserved when doveconf is given a setting name as parameter, so its
value is output regardless of whether it's the default value or not.

23 months agolib-mail: message-parser - Limit headers total count to 50MB by default
Marco Bettini [Wed, 24 Apr 2024 10:45:46 +0000 (10:45 +0000)] 
lib-mail: message-parser - Limit headers total count to 50MB by default

(including top headers and all mime-sections headers)

23 months agolib-mail: message-header-parser - Limit header block to 10MB by default
Marco Bettini [Fri, 12 Apr 2024 15:06:43 +0000 (15:06 +0000)] 
lib-mail: message-header-parser - Limit header block to 10MB by default

23 months agolib-mail, lib-imap: Optimize parsing large number of address headers
Timo Sirainen [Thu, 8 Feb 2024 22:57:12 +0000 (00:57 +0200)] 
lib-mail, lib-imap: Optimize parsing large number of address headers

Every header was appended to a linked list by walking through the whole
list, causing excessive CPU usage when the list became large enough.
Fixed by changing struct message_part_envelope to use struct
message_address_list, which stores also linked list tail pointers. This
allows quickly appending to the end of the linked list.

23 months agolib-mail: Add message_address_parse_full() and struct message_address_list
Timo Sirainen [Tue, 30 Jan 2024 20:17:38 +0000 (22:17 +0200)] 
lib-mail: Add message_address_parse_full() and struct message_address_list

23 months agolib-mail: Change message_address to be doubly linked list
Timo Sirainen [Sat, 3 Feb 2024 22:26:57 +0000 (00:26 +0200)] 
lib-mail: Change message_address to be doubly linked list

23 months agolib-mail: test-imap-envelope - Use test_assert_idx() where possible
Timo Sirainen [Tue, 30 Jan 2024 20:42:50 +0000 (22:42 +0200)] 
lib-mail: test-imap-envelope - Use test_assert_idx() where possible

23 months agolib: Add DLLIST2_JOIN()
Timo Sirainen [Thu, 8 Feb 2024 22:33:00 +0000 (00:33 +0200)] 
lib: Add DLLIST2_JOIN()

23 months agolib: test-llist - Fix dllist2 test name
Timo Sirainen [Thu, 8 Feb 2024 22:32:39 +0000 (00:32 +0200)] 
lib: test-llist - Fix dllist2 test name

23 months agolib-lua: Actually get proxy_url from Lua
Aki Tuomi [Wed, 14 Aug 2024 07:16:11 +0000 (10:16 +0300)] 
lib-lua: Actually get proxy_url from Lua

Broken in 85449f6a6cf3f0df1d63728ab107413436595b49

2 years agolib-lua: Ensure invalid settings are caught in HTTP client initialization
Aki Tuomi [Sat, 10 Aug 2024 21:47:17 +0000 (00:47 +0300)] 
lib-lua: Ensure invalid settings are caught in HTTP client initialization

2 years agolib-storage: Fix settings leak when mailbox list iteration fails in settings lookup
Timo Sirainen [Mon, 12 Aug 2024 04:18:31 +0000 (07:18 +0300)] 
lib-storage: Fix settings leak when mailbox list iteration fails in settings lookup

Broken by 48df71ee56482db1d2631f6b34fabbb434563545

2 years agolib-dcrypt, lib-ssl-iostream: Don't use strerror() when OpenSSL error queue is empty
Timo Sirainen [Thu, 8 Aug 2024 13:05:54 +0000 (16:05 +0300)] 
lib-dcrypt, lib-ssl-iostream: Don't use strerror() when OpenSSL error queue is empty

This shouldn't be necessary, and there is no guarantee that the current
errno value has anything to do with what had failed.

2 years agolib-dcrypt: dcrypt_ctx_hmac_init() - Clean up properly in error code paths
Timo Sirainen [Thu, 8 Aug 2024 20:42:48 +0000 (23:42 +0300)] 
lib-dcrypt: dcrypt_ctx_hmac_init() - Clean up properly in error code paths

2 years agolib-dcrypt: dcrypt_ctx_hmac_destroy() - Fix memory leak with OpenSSL 3
Timo Sirainen [Thu, 8 Aug 2024 20:40:00 +0000 (23:40 +0300)] 
lib-dcrypt: dcrypt_ctx_hmac_destroy() - Fix memory leak with OpenSSL 3

2 years agoquota: Fix detecting invalid quota_mailbox_message_count value
Timo Sirainen [Fri, 2 Aug 2024 08:57:29 +0000 (11:57 +0300)] 
quota: Fix detecting invalid quota_mailbox_message_count value

2 years agolib-dcrypt: ostream-encrypt - Fix dcrypt_ctx_hmac_init() error handling
Timo Sirainen [Fri, 2 Aug 2024 11:18:13 +0000 (14:18 +0300)] 
lib-dcrypt: ostream-encrypt - Fix dcrypt_ctx_hmac_init() error handling

2 years agolib-dcrypt: ctx_hmac_init() - Fix memory leak if MAC initialization failed
Timo Sirainen [Fri, 2 Aug 2024 11:15:23 +0000 (14:15 +0300)] 
lib-dcrypt: ctx_hmac_init() - Fix memory leak if MAC initialization failed

2 years agolib-dcrypt: ctx_hmac_init() - Fix memory allocation failure handling with OpenSSL3
Timo Sirainen [Fri, 2 Aug 2024 11:14:14 +0000 (14:14 +0300)] 
lib-dcrypt: ctx_hmac_init() - Fix memory allocation failure handling with OpenSSL3

2 years agoconfigure: Remove extra space from capabilities
Aki Tuomi [Fri, 2 Aug 2024 07:21:38 +0000 (10:21 +0300)] 
configure: Remove extra space from capabilities

Broken in 16218e44ace1af2952b5090a4e2bb26b9495ba94

2 years agolib-dcrypt: test-stream - Test multiple ciphers
Aki Tuomi [Wed, 31 Jul 2024 06:14:55 +0000 (09:14 +0300)] 
lib-dcrypt: test-stream - Test multiple ciphers

2 years agolib-dcrypt: Add OID for chacha20-poly1305 for OpenSSL1
Aki Tuomi [Wed, 31 Jul 2024 06:13:58 +0000 (09:13 +0300)] 
lib-dcrypt: Add OID for chacha20-poly1305 for OpenSSL1

2 years agolib-dcrypt: istream-decrypt - Read more if footer has not been fully read
Aki Tuomi [Wed, 31 Jul 2024 07:19:59 +0000 (10:19 +0300)] 
lib-dcrypt: istream-decrypt - Read more if footer has not been fully read

Fixes signal 11 crash caused by decrypt_size underflowing.

Broken in 316cbe323513a0f20d1cf519fe9405e231d633e2

2 years agolib: test-file-cache - build expected error strings using strerror
Duncan Overbruck [Mon, 18 Dec 2023 15:12:22 +0000 (16:12 +0100)] 
lib: test-file-cache - build expected error strings using strerror

Different libc libraries like musl and glibc have different error
strings for the same errno's, to make the tests work as expected
with musl libc, use strerror to build the expected error string.

2 years agoglobal: Move some settings back to non-hidden for core/CE
Michael M Slusarz [Wed, 17 Jul 2024 17:03:56 +0000 (11:03 -0600)] 
global: Move some settings back to non-hidden for core/CE

2 years agolib-master, config: Add a required dovecot_storage_version setting
Timo Sirainen [Wed, 19 Jun 2024 12:41:24 +0000 (15:41 +0300)] 
lib-master, config: Add a required dovecot_storage_version setting

This setting specifies specifies the oldest Dovecot version that must be
able to read the files written by this Dovecot. This setting replaces
separate settings that are added when file formats are changed.

The intention is that when upgrading Dovecot cluster, this setting is
first kept as the old Dovecot version. Once the cluster is fully upgraded
to a new version and there is no intention to rollback to the old version
anymore, this version number can be increased.

2 years agolib-master: Add version_is_valid() and version_cmp()
Timo Sirainen [Wed, 19 Jun 2024 12:40:46 +0000 (15:40 +0300)] 
lib-master: Add version_is_valid() and version_cmp()

2 years agoconfig: doveconf - Change is_config_binary() to return TRUE
Timo Sirainen [Wed, 19 Jun 2024 19:13:25 +0000 (22:13 +0300)] 
config: doveconf - Change is_config_binary() to return TRUE

Previously only the "config" binary returned TRUE, while doveconf didn't.
The intention was always for both to return TRUE, since it's an alternative
runtime check for CONFIG_BINARY macro.

2 years agodoc/example-config: Add dovecot_config_version setting to dovecot.conf
Timo Sirainen [Wed, 19 Jun 2024 19:37:59 +0000 (22:37 +0300)] 
doc/example-config: Add dovecot_config_version setting to dovecot.conf

2 years agoconfig: doveconf - Output dovecot_config_version setting
Timo Sirainen [Wed, 19 Jun 2024 09:32:07 +0000 (12:32 +0300)] 
config: doveconf - Output dovecot_config_version setting

It is not currently output for e.g. "doveconf -d"

2 years agoconfig: Add a required dovecot_config_version setting
Timo Sirainen [Wed, 19 Jun 2024 08:24:49 +0000 (11:24 +0300)] 
config: Add a required dovecot_config_version setting

This version must now be the first setting in the configuration file.
This is just the minimal version to allow supporting backwards
compatibility better in later versions.

2 years agomaster: --build-options: Print "pro" for Pro build
Timo Sirainen [Wed, 19 Jun 2024 08:49:53 +0000 (11:49 +0300)] 
master: --build-options: Print "pro" for Pro build

2 years agoquota: Remove support for setting quota limits via dict
Timo Sirainen [Wed, 12 Jun 2024 11:01:35 +0000 (14:01 +0300)] 
quota: Remove support for setting quota limits via dict

2 years agoimap-quota: Remove support for SETQUOTA
Timo Sirainen [Wed, 12 Jun 2024 10:59:49 +0000 (13:59 +0300)] 
imap-quota: Remove support for SETQUOTA

It always now just returns "No permission".

2 years agoquota: Add quota_mailbox_count setting
Timo Sirainen [Fri, 7 Jun 2024 10:23:17 +0000 (13:23 +0300)] 
quota: Add quota_mailbox_count setting

2 years agolib-storage: Add mailbox_list_get_count()
Timo Sirainen [Fri, 7 Jun 2024 10:12:35 +0000 (13:12 +0300)] 
lib-storage: Add mailbox_list_get_count()

2 years agolib: test-ostream-multiplex - Free output2 as well
Aki Tuomi [Mon, 1 Jul 2024 19:04:25 +0000 (22:04 +0300)] 
lib: test-ostream-multiplex - Free output2 as well

2 years agolib: ostream-multiplex - Fix sign mismatch
Aki Tuomi [Mon, 1 Jul 2024 19:04:05 +0000 (22:04 +0300)] 
lib: ostream-multiplex - Fix sign mismatch

2 years agosettings: Mark various settings as advanced
Michael M Slusarz [Tue, 25 Jun 2024 22:59:16 +0000 (16:59 -0600)] 
settings: Mark various settings as advanced

2 years agoglobal: Try shutdown connections before closing
Aki Tuomi [Tue, 4 Jun 2024 08:05:47 +0000 (11:05 +0300)] 
global: Try shutdown connections before closing

This is to avoid closing connections uncleanly.

2 years agologin-common: Set correct disconnect reason if TLS handshake failed
Aki Tuomi [Tue, 4 Jun 2024 08:05:25 +0000 (11:05 +0300)] 
login-common: Set correct disconnect reason if TLS handshake failed

2 years agolib-ssl-iostream: Properly shutdown TLS connections
Aki Tuomi [Tue, 4 Jun 2024 08:04:55 +0000 (11:04 +0300)] 
lib-ssl-iostream: Properly shutdown TLS connections

2 years agolib-ssl-iostream: Do not overwrite last_error
Aki Tuomi [Mon, 20 May 2024 13:04:18 +0000 (16:04 +0300)] 
lib-ssl-iostream: Do not overwrite last_error

2 years agolib-ssl-iostream: Set correct alerts
Aki Tuomi [Tue, 14 May 2024 09:39:06 +0000 (12:39 +0300)] 
lib-ssl-iostream: Set correct alerts

2 years agolib-oauth2: Add grant_type=client_credentials method
Markus Valentin [Wed, 26 Jun 2024 11:26:26 +0000 (13:26 +0200)] 
lib-oauth2: Add grant_type=client_credentials method

2 years agolib-oauth2: oauth2_request_start() - Allow starting a request without input->token
Markus Valentin [Fri, 28 Jun 2024 10:21:21 +0000 (12:21 +0200)] 
lib-oauth2: oauth2_request_start() - Allow starting a request without input->token

This is needed for the client_credentials grant type as it does not pass
a token but a client_secret to authenticate.

2 years agodovecot-config: Add lib-oauth2 to LIBDOVECOT_INCLUDE
Markus Valentin [Wed, 26 Jun 2024 11:00:45 +0000 (13:00 +0200)] 
dovecot-config: Add lib-oauth2 to LIBDOVECOT_INCLUDE

2 years agolmtp: Add support for SMTPUTF8
Arnt Gulbrandsen [Mon, 12 Jun 2023 10:38:15 +0000 (12:38 +0200)] 
lmtp: Add support for SMTPUTF8

This is based on code from someone called 'vk'. It's incomplete (needs
RFC8265 support at least), but works for him/her.

2 years agosmtp: Add support for SMTPUTF8
Arnt Gulbrandsen [Tue, 22 Nov 2022 11:51:44 +0000 (12:51 +0100)] 
smtp: Add support for SMTPUTF8

This adds support for SMTPUTF8 (RFC 6531) to the LMTP and Submission
services. The Submission service advertises this extension only if its
upstream relay does, and takes some care to avoid a misunderstood error
message.

2 years agoimap: Add UTF8=ACCEPT capability (RFC 6855)
Arnt Gulbrandsen [Tue, 22 Nov 2022 11:38:14 +0000 (12:38 +0100)] 
imap: Add UTF8=ACCEPT capability (RFC 6855)

This adds the capability and accepts UTF8 quoted-strings.

The SEARCH command is changed as required by RFC 6855, section 3, final
paragraph. There are no changes to the searching, as 6855 only changes
changes the syntax.

This does not add any kind of downgrading. Before this change, Dovecot would
accept an APPEND of a message such as

   From: grå@grå.org
   Subject: grå
   ...

and would just-send-8 that to any IMAP clients. This change maintains that policy.

2 years agolib-mail: Make FETCH ENVELOPE and SEARCH work on the human-readable domains
Arnt Gulbrandsen [Fri, 1 Mar 2024 16:47:28 +0000 (17:47 +0100)] 
lib-mail: Make FETCH ENVELOPE and SEARCH work on the human-readable domains

This stores the unicode form of domains in all indexes, meaning that
searching uses and serverside parsing shows the human-readable form of all
addresses.