]>
git.ipfire.org Git - thirdparty/dovecot/core.git/log
Marco Bettini [Fri, 14 Feb 2025 09:16:56 +0000 (09:16 +0000)]
fts-flatcurve: Switch from <stdio.h> to <cstdio>
Michael M Slusarz [Wed, 13 Mar 2024 00:20:24 +0000 (18:20 -0600)]
fts-flatcurve: Fix potential crash when searching virtual mailboxes
Fixes:
Panic: file fts-search.c: line 87 (level_scores_add_vuids):
assertion failed: (array_count(&vuids_arr) == array_count(&br->scores))
Michael M Slusarz [Thu, 29 Feb 2024 05:14:53 +0000 (22:14 -0700)]
fts-flatcurve: Support lock files in VOLATILEDIR
Marco Bettini [Fri, 24 Jan 2025 16:06:17 +0000 (16:06 +0000)]
fts-flatcurve: Fix maybe queries
Marco Bettini [Fri, 24 Jan 2025 15:31:36 +0000 (15:31 +0000)]
fts-flatcurve: Ignore non-selectable mailboxes when doing optimize/rescan
Marco Bettini [Fri, 24 Jan 2025 15:23:39 +0000 (15:23 +0000)]
fts-flatcurve: Ignore alias mailboxes when doing optimize/rescan
Marco Bettini [Thu, 13 Feb 2025 09:13:34 +0000 (09:13 +0000)]
fts: xml2text - Move lib_init()/deinit() to surround event_create() and unref()
Otherwise we crash at 23: .event = event_create(NULL)
Timo Sirainen [Thu, 20 Feb 2025 07:36:44 +0000 (09:36 +0200)]
config: Add explicit support for 3.1.0 version
Config version 3.0.x is no longer supported.
Aki Tuomi [Wed, 19 Feb 2025 08:16:53 +0000 (10:16 +0200)]
lib-var-expand: Use moduledir instead of pkglibdir for crypt
This is where the module is installed.
Josh Soref [Tue, 18 Feb 2025 00:39:11 +0000 (19:39 -0500)]
lib-dict: Add DISTCLEANFILES for dict-drivers-register.c
Josh Soref [Tue, 18 Feb 2025 00:15:05 +0000 (19:15 -0500)]
Makefile: Exclude conf files from dist uninstall check
Timo Sirainen [Fri, 14 Feb 2025 08:41:01 +0000 (10:41 +0200)]
auth: lua - Passdb/userdb lookups can no longer return a single string on success
The second return value must be either a table or nil. Returning a single
string was a bit unsafe since its values could accidentally become expanded
to spaces, causing unsafe behavior.
If the first return value indicates an error, the second can still be a
string.
Timo Sirainen [Fri, 14 Feb 2025 08:12:04 +0000 (10:12 +0200)]
auth: Remove unused passdb/userdb-template.[ch]
Timo Sirainen [Fri, 14 Feb 2025 08:09:56 +0000 (10:09 +0200)]
auth: lua - Remove auth_request#response_from_template()
This is a bit unsafe since it can't handle e.g. spaces in values.
It's also relying on otherwise obsolete template code.
Timo Sirainen [Fri, 14 Feb 2025 08:10:57 +0000 (10:10 +0200)]
auth: Move STATIC_PASS_SCHEME to passdb.h
Timo Sirainen [Fri, 14 Feb 2025 12:27:28 +0000 (14:27 +0200)]
auth: Expand debug message about auth failure delay handling
Timo Sirainen [Fri, 14 Feb 2025 11:43:46 +0000 (13:43 +0200)]
auth: Avoid auth failure delays entirely with auth_failure_delay=0
Timo Sirainen [Fri, 14 Feb 2025 11:42:07 +0000 (13:42 +0200)]
auth: Don't use auth failure delay for internal failures
Internal failures nowadays have their own delays.
Timo Sirainen [Fri, 14 Feb 2025 11:41:26 +0000 (13:41 +0200)]
auth: Split off auth_request_want_failure_delay()
Aki Tuomi [Mon, 17 Feb 2025 09:47:52 +0000 (11:47 +0200)]
lib-var-expand: Validate UTF-8 input
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