]>
git.ipfire.org Git - thirdparty/dovecot/core.git/log
Aki Tuomi [Mon, 17 Feb 2025 10:44:04 +0000 (12:44 +0200)]
lib-var-expand: Fix lexer error passing
This way we can actually tell what the lexer did wrong.
Aki Tuomi [Mon, 17 Feb 2025 09:45:39 +0000 (11:45 +0200)]
lib-var-expand: fn_domain - Copy value before setting state
Aki Tuomi [Mon, 17 Feb 2025 09:41:40 +0000 (11:41 +0200)]
lib-var-expand: Reuse var_expand_state_set_transfer_data() in var_expand_state_set_transfer_binary()
It's same code
Aki Tuomi [Mon, 17 Feb 2025 09:41:09 +0000 (11:41 +0200)]
lib-var-expand: Ensure we don't try to set transfer from partial of it
Timo Sirainen [Sat, 15 Feb 2025 18:43:22 +0000 (20:43 +0200)]
imap: Fix crash with Maildir when trying to send INPROGRESS during mailbox syncing
Mailbox syncing could have been done outside command context, in which case
there is no global event.
Timo Sirainen [Sun, 16 Feb 2025 07:20:25 +0000 (09:20 +0200)]
global: Fix compiling without ldap
Timo Sirainen [Sun, 16 Feb 2025 07:19:18 +0000 (09:19 +0200)]
global: Replace PASSDB_LDAP/USERDB_LDAP with HAVE_LDAP macro
This macro is needed for other ldap-related code.
Timo Sirainen [Sat, 15 Feb 2025 07:12:25 +0000 (09:12 +0200)]
auth: Fix memory leak when building oauth2 failure JSON reply
Broken by
4bf8b11f5196752bb928baf59e48f9774bb0ce59
Timo Sirainen [Sat, 15 Feb 2025 09:04:03 +0000 (11:04 +0200)]
lib-smtp: Fix pipelining initial SASL response after AUTH
Aki Tuomi [Tue, 11 Feb 2025 14:19:05 +0000 (16:19 +0200)]
auth: Avoid delaying reply when shutting down
Aki Tuomi [Thu, 6 Feb 2025 13:43:28 +0000 (15:43 +0200)]
auth: Deinitialize connection already in auth_client_connection_destroy()
Aki Tuomi [Thu, 6 Feb 2025 13:42:40 +0000 (15:42 +0200)]
auth: Deinitialize passdb before freeing up settings
Some passdbs need the settings during deinitialization.
Aki Tuomi [Thu, 13 Feb 2025 07:31:47 +0000 (09:31 +0200)]
quota: Fix integer type in quota_warning_match()
Found by static analysis
Aki Tuomi [Thu, 13 Feb 2025 07:36:02 +0000 (09:36 +0200)]
lib-var-expand: Fix potential crash if referring to too large regexp capture group
Using sizeof() will not give number of elements here.
Aki Tuomi [Thu, 13 Feb 2025 07:16:21 +0000 (09:16 +0200)]
lib-var-expand: Ensure key is not NULL in fn_hash()
Satisfies static analysers
Aki Tuomi [Thu, 13 Feb 2025 07:34:23 +0000 (09:34 +0200)]
lib-var-expand: Fix memory leak if filter fails
Broken in
a9d9eb4297a2cccec0cf698a45efb4f1987bdc63
Aki Tuomi [Thu, 13 Feb 2025 07:13:44 +0000 (09:13 +0200)]
lib-settings: Fix sorting named list filter overrides
It should check that both set1 and set2 have non-zero
filter_element_count.
Broken in
e2a3a0a6915668a44750aa30b70fa39caf22be4a
Aki Tuomi [Thu, 13 Feb 2025 07:14:48 +0000 (09:14 +0200)]
fts: Use FTS_USER_CONTEXT_REQUIRE in fts_mail_user_init()
User is required to be present.
Broken in
6634e45500e81cfa36932203ee69c81745efd3e6
Aki Tuomi [Thu, 13 Feb 2025 07:38:48 +0000 (09:38 +0200)]
fts-solr: Require user context
Broken in
324adafd921edddc83606af9ea97d9c4587ea920
Aki Tuomi [Thu, 13 Feb 2025 07:30:07 +0000 (09:30 +0200)]
fts-flatcurve: Require user context
Broken in
b4ca8f7e58a0a7561a314fe733c65914966d9046
Aki Tuomi [Thu, 13 Feb 2025 07:36:59 +0000 (09:36 +0200)]
auth: Remove useless variable in db_oauth2_var_expand_func_oauth2()
Aki Tuomi [Wed, 8 Jan 2025 12:17:59 +0000 (14:17 +0200)]
NEWS: Add news for v2.4.0
Aki Tuomi [Wed, 8 Jan 2025 12:20:55 +0000 (14:20 +0200)]
NEWS: Fix formatting to match editorconfig
Aki Tuomi [Fri, 10 Jan 2025 12:38:11 +0000 (14:38 +0200)]
editorconfig: Use tabs with NEWS file
Timo Sirainen [Thu, 6 Feb 2025 12:47:37 +0000 (14:47 +0200)]
login-common: Add proxy_session_reconnecting event and log it as warning
Even if the login succeeds on a retry, it can still indicate e.g. network
packet loss, which can be useful to see in log files as warning.
Timo Sirainen [Wed, 5 Feb 2025 09:50:43 +0000 (11:50 +0200)]
lib-settings: Allow spaces in "key +=value"
This is useful in configuring userdb_fields { key += value }
Timo Sirainen [Mon, 10 Feb 2025 12:00:43 +0000 (14:00 +0200)]
config: Use isspace() for checking whitespace
Michael M Slusarz [Tue, 11 Feb 2025 11:19:48 +0000 (04:19 -0700)]
global: Update documentation links in source code
Michael M Slusarz [Tue, 11 Feb 2025 11:08:55 +0000 (04:08 -0700)]
INSTALL: Update documentation links for 2.4
Michael M Slusarz [Tue, 11 Feb 2025 11:03:32 +0000 (04:03 -0700)]
README: Master RFC list is now maintained in documentation
Aki Tuomi [Mon, 3 Feb 2025 12:15:58 +0000 (14:15 +0200)]
global: Set application protocol on new context only
Aki Tuomi [Mon, 3 Feb 2025 12:10:39 +0000 (14:10 +0200)]
lib-ssl-iostream: Change ssl_iostream_context_cache_get() to return 1 on new context
This allows differentiating when a new context was actually created.
Aki Tuomi [Thu, 30 Jan 2025 11:57:08 +0000 (13:57 +0200)]
lib-ssl-iostream: Set context application protocols only once
Timo Sirainen [Mon, 10 Feb 2025 13:33:21 +0000 (15:33 +0200)]
lib-ssl-iostream: Fix compiling with libressl
libressl has no SSL_OP_NO_RENEGOTIATION. Fix this by disallowing channel
binding with libressl when using TLSv1.2 or older.
Aki Tuomi [Fri, 7 Feb 2025 07:58:59 +0000 (09:58 +0200)]
auth: mech-oauth2 - Use json ostream instead of generator
Timo Sirainen [Mon, 10 Feb 2025 09:10:09 +0000 (11:10 +0200)]
configure.ac: Remove unused want_devel_checks
Timo Sirainen [Mon, 10 Feb 2025 08:13:24 +0000 (10:13 +0200)]
lib-settings: Rename DEVEL_CHECKS ifdefs to DEBUG
Timo Sirainen [Mon, 10 Feb 2025 07:51:17 +0000 (09:51 +0200)]
imap: Move ENABLE's mail_utf8_extensions check to UTF8=ACCEPT callback
Timo Sirainen [Mon, 10 Feb 2025 07:48:39 +0000 (09:48 +0200)]
imap: Allow feature callbacks to not enable the feature
Timo Sirainen [Mon, 10 Feb 2025 07:44:12 +0000 (09:44 +0200)]
imap: Fix ENABLE UTF8=ACCEPT to not return it to client if mail_utf8_extensions=no
Timo Sirainen [Thu, 6 Feb 2025 10:18:11 +0000 (12:18 +0200)]
lda: Remove check to fail if binary is setuid-root and world-executable
It's not safe to use as setuid-root even when not world-executable.
Remove the check so people might not get wrong ideas about its safety.
Timo Sirainen [Sat, 1 Feb 2025 20:25:11 +0000 (22:25 +0200)]
lib-lua: Add event.[un]set_forced_debug()
Marco Bettini [Wed, 5 Feb 2025 16:12:35 +0000 (16:12 +0000)]
fts-flatcurve: Fix deadlock in flatcurve indexing
The deadlock was caused by not releasing soon enough the writable database,
causing the search process and the indexer process to conflict
Aki Tuomi [Thu, 6 Feb 2025 07:44:44 +0000 (09:44 +0200)]
lib-var-expand: test-var-expand - Use test_assert_idx
Aki Tuomi [Thu, 6 Feb 2025 07:43:23 +0000 (09:43 +0200)]
lib-var-expand: test-var-expand - Fix expected message to match on older bison
Bison 3.0.4 produces different error
Aki Tuomi [Mon, 3 Feb 2025 09:33:15 +0000 (11:33 +0200)]
auth: Remove duplicate prefix from providers
Aki Tuomi [Mon, 3 Feb 2025 09:28:44 +0000 (11:28 +0200)]
lib-var-expand: Remove duplicate prefix from providers
Aki Tuomi [Mon, 3 Feb 2025 09:28:23 +0000 (11:28 +0200)]
lib-var-expand: Prefix provider errors with provider prefix
Aki Tuomi [Thu, 30 Jan 2025 12:37:46 +0000 (14:37 +0200)]
auth: Set error when field not found in auth_request_fields_var_expand_lookup()
Aki Tuomi [Tue, 28 Jan 2025 14:10:10 +0000 (16:10 +0200)]
lib-var-expand: Ensure provider returns either error or value
Timo Sirainen [Sat, 1 Feb 2025 20:09:11 +0000 (22:09 +0200)]
master: Add suggestion to use "unlimited" for some service error messages
Timo Sirainen [Wed, 5 Feb 2025 09:57:10 +0000 (11:57 +0200)]
auth: Change hardcoded 3 to AUTH_CLIENT_MINOR_VERSION_CHANNEL_BINDING
Aki Tuomi [Thu, 6 Feb 2025 07:13:41 +0000 (09:13 +0200)]
lib-var-expand: Drop -Wcounterexamples from bison
It's not needed. Forgotten in
2b8d353de6ee61793a411cc1729cf9cff857ce34
Timo Sirainen [Mon, 3 Feb 2025 08:03:42 +0000 (10:03 +0200)]
auth: Add "auth-legacy" listener type
This is needed at least by Exim authentication until it gets updated.
Timo Sirainen [Mon, 3 Feb 2025 08:00:00 +0000 (10:00 +0200)]
auth: auth_client_connection_create() - Change boolean parameters to enum
Timo Sirainen [Mon, 3 Feb 2025 11:20:33 +0000 (13:20 +0200)]
auth: userdb sql - Fix memory leak when user iteration fails with invalid settings
Timo Sirainen [Mon, 3 Feb 2025 10:21:37 +0000 (12:21 +0200)]
imap-login: Fix accessing freed memory when using IMAP COMPRESS
Broken by "imap-login: Fix leaking settings instance memory" commit.
Timo Sirainen [Tue, 28 Jan 2025 13:39:48 +0000 (15:39 +0200)]
config: Fix error handling for illegal filter ordering
Timo Sirainen [Sat, 25 Jan 2025 20:56:17 +0000 (22:56 +0200)]
lib-settings, config: Use named (non-list) filter hierarchy length also for sorting overrides
Timo Sirainen [Fri, 24 Jan 2025 14:02:43 +0000 (16:02 +0200)]
lib-settings: Fix override ordering when mixing multiple override types
Timo Sirainen [Fri, 24 Jan 2025 13:57:18 +0000 (15:57 +0200)]
lib-settings: Skip unmatched settings overrides earlier
Timo Sirainen [Thu, 23 Jan 2025 21:51:55 +0000 (23:51 +0200)]
global: Remove SETTINGS_EVENT_MAILBOX_NAME_WITH[OUT]_PREFIX macros and special handling
The mailbox settings are now looked up with settings_filter_names, so
there's no need to do this kind of special translations.
Timo Sirainen [Thu, 23 Jan 2025 21:44:07 +0000 (23:44 +0200)]
lib-settings: Fix seen_filter check to work properly with multiple settings_name_filters
Timo Sirainen [Thu, 23 Jan 2025 21:17:13 +0000 (23:17 +0200)]
lib: Add event_filter_get_root_node()
Timo Sirainen [Thu, 23 Jan 2025 21:04:34 +0000 (23:04 +0200)]
global: Remove event fields no longer necessary for settings lookups
settings_filter_names are now used for settings lookups.
Timo Sirainen [Wed, 22 Jan 2025 12:11:54 +0000 (14:11 +0200)]
lib-settings: Change overrides to use only settings_filter_names
Timo Sirainen [Wed, 22 Jan 2025 11:07:34 +0000 (13:07 +0200)]
config: Require named list filter lookups to use settings_filter_name
The config client callers are now responsible for doing lookups with e.g.
settings_filter_name=namespace/inbox in the event, rather than relying on
just namespace=inbox being in the event.
This allows separating the filter name from the setting values. So for
example userdb can change the mailbox name (mailbox/spam/name=Junk).
Timo Sirainen [Thu, 23 Jan 2025 21:30:01 +0000 (23:30 +0200)]
lib-settings: Change service filtering optimization to use settings_filter_name
Timo Sirainen [Wed, 22 Jan 2025 22:01:27 +0000 (00:01 +0200)]
quota: Allow quota_name setting to differ from quota filter name
Timo Sirainen [Wed, 22 Jan 2025 20:39:10 +0000 (22:39 +0200)]
global: Use settings_get_filter() where possible
Timo Sirainen [Wed, 22 Jan 2025 11:40:01 +0000 (13:40 +0200)]
global: Get named list filters' settings using settings_filter_names
Timo Sirainen [Wed, 22 Jan 2025 15:36:30 +0000 (17:36 +0200)]
lib-fs: Get fs settings using settings_filter_name
Timo Sirainen [Wed, 22 Jan 2025 10:57:40 +0000 (12:57 +0200)]
lib-storage: Add all matching mailbox settings_filter_names to mailbox events
Timo Sirainen [Wed, 29 Jan 2025 07:54:39 +0000 (09:54 +0200)]
lib-storage: Refactor namespace_have_special_use_mailboxes() into namespace_parse_mailboxes()
Simplifies the next commit.
Timo Sirainen [Thu, 23 Jan 2025 09:01:24 +0000 (11:01 +0200)]
global: Use settings_event_add_filter_name() where possible
Timo Sirainen [Thu, 23 Jan 2025 08:52:48 +0000 (10:52 +0200)]
lib-settings: Add settings_event_add[_list]_filter_name()
Timo Sirainen [Thu, 23 Jan 2025 20:50:45 +0000 (22:50 +0200)]
lib-settings: Fix using named filters in overrides
SETTINGS_EVENT_FILTER_NAME has to be either in event pointers or as strlist
type. Here it was a string type, which was just ignored.
Timo Sirainen [Mon, 7 Oct 2024 11:51:55 +0000 (14:51 +0300)]
lib-settings, config: Add and use SETTINGS_FILTER_ARRAY_SEPARATORS
Timo Sirainen [Fri, 24 Jan 2025 07:15:35 +0000 (09:15 +0200)]
lib-storage: Fix error handling if mailbox settings couldn't be looked up
Timo Sirainen [Fri, 24 Jan 2025 07:14:42 +0000 (09:14 +0200)]
config: Skip checking settings also for filters inside a @group
Timo Sirainen [Wed, 22 Jan 2025 20:30:21 +0000 (22:30 +0200)]
quota: Fix error handling if quota_warning settings couldn't be looked up
The error code path for some reason deinitialized the whole quota root,
which caused freed memory to be accessed later.
Timo Sirainen [Thu, 23 Jan 2025 08:26:30 +0000 (10:26 +0200)]
lib-storage: Add missing use of SETTINGS_EVENT_NAMESPACE_NAME
Timo Sirainen [Wed, 29 Jan 2025 08:17:46 +0000 (10:17 +0200)]
imap-login: Fix leaking settings instance memory
Timo Sirainen [Tue, 28 Jan 2025 13:15:10 +0000 (15:15 +0200)]
config: Don't add redundant named filter to doveconf output
For example:
userdb ldap {
iterate_fields {
This was output as:
userdb ldap {
userdb_ldap {
iterate_fields {
Timo Sirainen [Mon, 27 Jan 2025 13:49:54 +0000 (15:49 +0200)]
config: Fix autoprefixing section names under named list filters
For example this didn't work:
userdb ldap {
iterate_fields {
It only tested userdb_iterate_fields, not userdb_ldap_iterate_fields.
Timo Sirainen [Tue, 28 Jan 2025 13:29:06 +0000 (15:29 +0200)]
lib-storage: Refer to mail_driver setting in failed autodetection error
Aki Tuomi [Mon, 27 Jan 2025 09:33:07 +0000 (11:33 +0200)]
lib-var-expand: test-var-expand - Initialize tm before strptime()
strptime() only sets what it parses, this test will fail if
localtime_r() and strptime() disagree on the local timezone, so
use localtime_r() to initialize tm with current tz to ensure they
will.
Timo Sirainen [Mon, 27 Jan 2025 09:32:27 +0000 (11:32 +0200)]
lib-http: Fix using wrong setting variable types
Marco Bettini [Wed, 22 Jan 2025 17:11:41 +0000 (17:11 +0000)]
fts-flatcurve: Remove fts_flatcurve_max_term_size setting
Note: the tokenizer already truncates with its own logic,
The truncation here is to ensure xapian is protected even if
tokenizer logics would change in future.
Marco Bettini [Tue, 21 Jan 2025 17:06:51 +0000 (17:06 +0000)]
fts-flatcurve: fts_flatcurve_xapian_uid_exists() - Do not return error if there was no actual error
Marco Bettini [Tue, 21 Jan 2025 11:11:00 +0000 (11:11 +0000)]
fts-flatcurve: fts_backend_flatcurve_update_build_more() - Truncate in utf8-safe manner
Marco Bettini [Fri, 17 Jan 2025 11:05:24 +0000 (11:05 +0000)]
fts-flatcurve: fts_backend_flatcurve_deinit() - Don't crash if init failed
When fts_backend_flatcurve_init() fails to find the user,
the fields are not initialized, with the exception of the event and
the preallocatd pool.
Marco Bettini [Thu, 23 Jan 2025 10:06:18 +0000 (10:06 +0000)]
fts-flatcurve: Remove stray empty lines
Stephan Bosch [Mon, 30 Nov 2020 18:12:11 +0000 (19:12 +0100)]
lib-imap-client: Add support for channel binding
Stephan Bosch [Thu, 12 Nov 2020 22:30:47 +0000 (23:30 +0100)]
doveadm: doveadm-auth - Add support for channel binding in test and login commands
Stephan Bosch [Wed, 8 Nov 2023 14:06:16 +0000 (15:06 +0100)]
doveadm: doveadm-auth - Always allocate authtest input pool
Stephan Bosch [Sun, 5 Nov 2023 20:06:07 +0000 (21:06 +0100)]
lib-sasl: mech-scram - Implement SCRAM-SHA-1-PLUS and SCRAM-SHA-256-PLUS
Stephan Bosch [Sun, 5 Nov 2023 20:04:36 +0000 (21:04 +0100)]
auth: mech-scram - Implement SCRAM-SHA-1-PLUS and SCRAM-SHA-256-PLUS
Stephan Bosch [Sun, 5 Nov 2023 20:05:51 +0000 (21:05 +0100)]
lib-auth: auth-scram-client - Add support for channel binding
Stephan Bosch [Sun, 5 Nov 2023 20:04:05 +0000 (21:04 +0100)]
lib-auth: auth-scram-server - Add support for channel binding