]>
git.ipfire.org Git - thirdparty/dovecot/core.git/log
Aki Tuomi [Fri, 14 Nov 2025 11:42:32 +0000 (13:42 +0200)]
lib-sql: driver-sqlite - Add sqlite_synchronous setting
Values are explained in https://sqlite.org/pragma.html#pragma_synchronous.
Default is 'FULL'.
Aki Tuomi [Fri, 10 Oct 2025 07:51:46 +0000 (10:51 +0300)]
lib-sql: driver-sqlite - Implement statement API
Aki Tuomi [Fri, 7 Nov 2025 07:21:01 +0000 (09:21 +0200)]
lib-sql: driver-sqlite - Use sqlite3_snprintf() to quote values
This does it the sqlite3 way.
Aki Tuomi [Mon, 20 Oct 2025 13:06:10 +0000 (16:06 +0300)]
lib-sql: sql-api - Make sql_prepared_statement_unref(NULL) no-op
Aki Tuomi [Fri, 10 Oct 2025 08:00:58 +0000 (11:00 +0300)]
lib-sql: driver-sqlite - Extract result preparation to driver_sqlite_statement_result_prepare()
Aki Tuomi [Fri, 10 Oct 2025 07:57:53 +0000 (10:57 +0300)]
lib-sql: driver-sqlite - Reorder driver_sqlite_query_s()
Aki Tuomi [Fri, 10 Oct 2025 07:27:57 +0000 (10:27 +0300)]
lib-sql: driver-sqlite - Use sql_statement for driver_sqlite_query_s()
Aki Tuomi [Wed, 26 Nov 2025 11:09:46 +0000 (13:09 +0200)]
lib-sql: driver-sqlite - Use ctx->error in driver_sqlite_transaction_commit_s()
Logging error_r too soon will just crash.
Aki Tuomi [Tue, 25 Nov 2025 13:24:43 +0000 (15:24 +0200)]
lib-sql: driver-sqlite - Log system errno as well
Aki Tuomi [Tue, 25 Nov 2025 13:21:48 +0000 (15:21 +0200)]
lib-sql: driver-sqlite - Clarify that readonly error is caused by sqlite_readonly=yes
Stephan Bosch [Thu, 29 Jan 2026 04:14:23 +0000 (05:14 +0100)]
lib-storage: list: mailbox-list-iter - Fix info pool memory leak upon iterator initialization failure
Only initialize the info pool when initialization of the iterator is otherwise
successful and almost complete.
Aki Tuomi [Wed, 21 Jan 2026 11:34:02 +0000 (13:34 +0200)]
global: Include sys/mkdev.h when needed
This is needed on Solaris to get makedev()
Aki Tuomi [Mon, 26 Jan 2026 07:47:16 +0000 (09:47 +0200)]
lib-regex: Do not use data stack for replacement string
It will get lost when the data stack frame is dropped at the end,
so use heap memory instead.
Stephan Bosch [Fri, 4 Jul 2025 00:09:31 +0000 (02:09 +0200)]
imap: Use normalized UTF8 mailbox names when UTF8=ACCEPT is enabled
Stephan Bosch [Tue, 26 Aug 2025 22:38:34 +0000 (00:38 +0200)]
lib-storage: list: mailbox-list-iter - Add list local variable to mailbox_list_iter_next_call()
Stephan Bosch [Tue, 26 Aug 2025 04:26:09 +0000 (06:26 +0200)]
lib-storage: mail-storage - Add storage local variable to mailbox_open_full()
Stephan Bosch [Sun, 31 Aug 2025 00:12:52 +0000 (02:12 +0200)]
imap: Produce UTF8 quoted strings when UTF8=ACCEPT is enabled and where possible
Stephan Bosch [Wed, 27 Aug 2025 00:49:21 +0000 (02:49 +0200)]
imap: cmd-namespace - Limit scope of ns_sep variable in list_namespaces()
Stephan Bosch [Wed, 27 Aug 2025 00:20:50 +0000 (02:20 +0200)]
imap: Expect and produce UTF8 mailbox names when UTF8=ACCEPT is enabled
Stephan Bosch [Tue, 26 Aug 2025 23:32:46 +0000 (01:32 +0200)]
imap: imap-commands-util - Change client_find_namespace_full() parameter to command context
Stephan Bosch [Wed, 27 Aug 2025 00:53:24 +0000 (02:53 +0200)]
lib-imap-urlauth: imap-urlauth-fetch - Add IMAP_URLAUTH_FETCH_FLAG_UTF8 flag
Stephan Bosch [Tue, 26 Aug 2025 02:55:40 +0000 (04:55 +0200)]
lib-imap-storage: imap-msgpart-url - Add UTF8 support to imap_msgpart_url_get_bodypartstructure()
Stephan Bosch [Tue, 26 Aug 2025 02:49:05 +0000 (04:49 +0200)]
lib-imap-storage: imap-msgpart - Add UTF8 support to imap_msgpart_bodypartstructure()
Stephan Bosch [Tue, 26 Aug 2025 02:15:17 +0000 (04:15 +0200)]
lib-storage: mail-search - Add UTF8 support for mail search args IMAP encoding
Stephan Bosch [Tue, 9 Dec 2025 07:26:24 +0000 (08:26 +0100)]
lib-imap: imap-id - Add UTF8 support for IMAP ID reply encoding
Stephan Bosch [Tue, 26 Aug 2025 01:29:52 +0000 (03:29 +0200)]
lib-imap: imap-bodystructure - Add UTF8 support for BODYSTRUCTURE encoding
Stephan Bosch [Tue, 26 Aug 2025 01:22:02 +0000 (03:22 +0200)]
lib-imap: imap-envelope - Add UTF8 support for ENVELOPE encoding
Stephan Bosch [Tue, 26 Aug 2025 00:54:57 +0000 (02:54 +0200)]
lib-imap: imap-quote - Add UTF8 support for IMAP string encoding
Stephan Bosch [Wed, 14 May 2025 00:08:06 +0000 (02:08 +0200)]
lib-settings: settings-parser - Add SET_FLAG_UNICODE_NFC flag
It causes string values to be normalized in NFC
Stephan Bosch [Fri, 4 Jul 2025 00:11:31 +0000 (02:11 +0200)]
lib-storage: mail-storage - Make mailbox_name_check_forbidden_chars() check a broader set of Unicode code points
Before, it only checked for ASCII control characters.
Stephan Bosch [Fri, 4 Jul 2025 00:29:16 +0000 (02:29 +0200)]
lib-storage: mail-storage - Produce the error message in mailbox_name_check_forbidden_chars()
Stephan Bosch [Fri, 4 Jul 2025 00:23:52 +0000 (02:23 +0200)]
lib-storage: mail-storage - Rename mailbox_name_has_control_chars() and change prototype
This function will be changed to check for forbidden characters in general.
Stephan Bosch [Tue, 13 May 2025 23:44:31 +0000 (01:44 +0200)]
lib-storage: list: mailbox-list-iter - Move info pool to struct mailbox_list_iterate_context
Make info pool available for more general use in mailbox list iteration.
Stephan Bosch [Tue, 26 Aug 2025 03:39:19 +0000 (05:39 +0200)]
imap: Rename test-imap-storage-callbacks.c to test-imap-progress.c
Stephan Bosch [Tue, 26 Aug 2025 03:29:17 +0000 (05:29 +0200)]
imap: imap-progress - Rename imap_storage_callback_line() to imap_progress_line()
Stephan Bosch [Tue, 26 Aug 2025 03:19:06 +0000 (05:19 +0200)]
imap: imap-storage-callbacks - Move imap_storage_callback_line() to imap-progress.c
Stephan Bosch [Thu, 18 Dec 2025 22:34:45 +0000 (23:34 +0100)]
imap: imap-storage-callbacks - Fix comment
Stephan Bosch [Sat, 26 Jul 2025 14:04:00 +0000 (16:04 +0200)]
lib: unicode-data - Add unicode_code_point*_is_assigned()
Stephan Bosch [Tue, 26 Aug 2025 23:16:00 +0000 (01:16 +0200)]
lib-storage: Reformat mail-search-mime.h
Stephan Bosch [Tue, 26 Aug 2025 23:15:40 +0000 (01:15 +0200)]
lib-storage: Reformat mail-search-mime.c
Aki Tuomi [Tue, 30 Dec 2025 10:31:42 +0000 (12:31 +0200)]
lib-var-expand: Remove notion of nested ifs
Aki Tuomi [Tue, 30 Dec 2025 09:44:12 +0000 (11:44 +0200)]
lib-var-expand: Add support for switch(lhs, op, cond, value, ...,default)
Operator that allows multiple if statements to be evaluated,
this works like if statement, but allows multiple condition-value pairs
with optional default. Each cond if used as right hand side for
comparison with lhs and op.
Markus Valentin [Tue, 20 Jan 2026 10:00:46 +0000 (11:00 +0100)]
doveadm auth: Change auth cache flush command to support user-mask
Change the "user" parameter of for doveadm-auth from a username array
to user-mask array.
Markus Valentin [Tue, 20 Jan 2026 09:59:08 +0000 (10:59 +0100)]
doveadm auth server: Change authCacheFlush command to support user-mask
Change the "user" parameter of for doveadm-auth-server from a username array
to user-mask array.
Fixes: Panic: file doveadm-cmd-parse.c: line 124 (doveadm_cmd_param_str): assertion failed: (param->type == CMD_PARAM_STR)
Markus Valentin [Tue, 20 Jan 2026 09:48:08 +0000 (10:48 +0100)]
auth: auth-cache: Change auth_master_cache_flush() to support user-masks
Change the CACHE-FLUSH auth command to support user-masks rather then
usernames.
Timo Sirainen [Thu, 22 Jan 2026 09:26:53 +0000 (11:26 +0200)]
lib: file_create_locked() - Improve EACCES error messages
Aki Tuomi [Mon, 12 Jan 2026 12:13:25 +0000 (14:13 +0200)]
imap-urlauth: worker - Remove useless includes
Aki Tuomi [Mon, 29 Dec 2025 10:08:25 +0000 (12:08 +0200)]
imap: urlfetch - Remove useless casts
Aki Tuomi [Mon, 29 Dec 2025 10:09:22 +0000 (12:09 +0200)]
lib-imap-urlauth: Fail if username does not match token
If remote user gets access to URLAUTH token, they can use any valid
credential to fetch the mail message.
Aki Tuomi [Mon, 29 Dec 2025 09:58:20 +0000 (11:58 +0200)]
lib-imap-urlauth: Remove useless cast in imap_urlauth_fetch_request_callback()
Aki Tuomi [Wed, 21 Jan 2026 08:46:20 +0000 (10:46 +0200)]
lib-var-expand-crypt: Link test binary statically
This prefers the static version of the module instead of shared object.
Fixes linking issues in non-linux systems.
Aki Tuomi [Wed, 21 Jan 2026 08:35:19 +0000 (10:35 +0200)]
lib-http: Use PRIuUOFF_T in format string in http_server_connection_create
uoff_t is not always size_t.
Aki Tuomi [Wed, 21 Jan 2026 08:32:04 +0000 (10:32 +0200)]
lib-var-expand: Use %jd since we deal with intmax_t
Aki Tuomi [Wed, 21 Jan 2026 08:14:17 +0000 (10:14 +0200)]
configure: Include libiconv in linker flags when needed
Aki Tuomi [Wed, 21 Jan 2026 09:10:15 +0000 (11:10 +0200)]
build-aux/config.rpath: Ship config.rpath ourselves
This is needed for iconv.m4
Aki Tuomi [Wed, 21 Jan 2026 08:13:35 +0000 (10:13 +0200)]
auth: passdb-bsdauth - Rename passdb_bsdauth_settings_keyvalue
This needs to be passdb_bsdauth_default_settings_keyvalue so the
all-settings.pl script picks it up into all-settings.c
Aki Tuomi [Fri, 16 Jan 2026 10:57:50 +0000 (12:57 +0200)]
auth: oauth2 - Do not export token by default
It just grows auth reply needlessly, if it's needed
one can export it in oauth2.
Aki Tuomi [Fri, 16 Jan 2026 08:27:27 +0000 (10:27 +0200)]
auth: db-oauth2 - Add token field to fields
Marco Bettini [Thu, 15 Jan 2026 14:39:21 +0000 (14:39 +0000)]
lib-mail: rfc2231_decode_value() - Move all the byte logic down into decode_hex_byte()
Marco Bettini [Thu, 15 Jan 2026 14:31:46 +0000 (14:31 +0000)]
lib-mail: rfc2231_decode_value() - Change type signedness to fix ubsan errors
also remove redundant const on parameters passed by value
Marco Bettini [Thu, 15 Jan 2026 14:25:07 +0000 (14:25 +0000)]
lib-mail: decode_hex_*() - Rename functions and remove leading underscores
Marco Bettini [Mon, 12 Jan 2026 15:59:29 +0000 (15:59 +0000)]
lib: quoted_printable_q_decode() - Use explicit type conversion to fix ubsan errors
Markus Valentin [Tue, 9 Dec 2025 14:11:23 +0000 (15:11 +0100)]
lib-lua: Add "set_event" and "get_event" function for dlua http_request
Aki Tuomi [Fri, 9 Jan 2026 11:31:42 +0000 (13:31 +0200)]
trash: Use mailbox event in trash_try_mailbox() for settings
Aki Tuomi [Thu, 8 Jan 2026 11:17:32 +0000 (13:17 +0200)]
lib-sasl: fuzz-sasl-authentication - Enable debug logging if DEBUG envvar is set
Aki Tuomi [Thu, 8 Jan 2026 11:16:39 +0000 (13:16 +0200)]
lib: randgen - Make undefined behaviour sanitizer happy
Marco Bettini [Wed, 7 Jan 2026 16:54:57 +0000 (16:54 +0000)]
lib-auth: crypt_verify_blowfish() - use str_equals_timing_almost_safe() instad of strcmp()
Aki Tuomi [Mon, 29 Dec 2025 07:26:43 +0000 (09:26 +0200)]
doveadm: Log tcp client IP instead of server IP as remote IP
Broken in
1d1d368f4547b35082e53d684e5ebefcba4cc364
Timo Sirainen [Sun, 7 Dec 2025 05:05:25 +0000 (07:05 +0200)]
push-notification: Fix using %variables in push_notification_ox_url
Aki Tuomi [Mon, 22 Dec 2025 20:01:18 +0000 (22:01 +0200)]
lib-regex: Limit number of capture groups correctly
We create at maximum max_capture_groups match groups.
Aki Tuomi [Mon, 22 Dec 2025 09:05:31 +0000 (11:05 +0200)]
lib-regex: Set DREGEX_MAX_MATCHES to library default
Aki Tuomi [Mon, 22 Dec 2025 09:04:16 +0000 (11:04 +0200)]
lib-regex: Separate maximum capture groups and match limit
These are not related.
Marco Bettini [Mon, 15 Dec 2025 18:01:12 +0000 (18:01 +0000)]
acl: acl_backend_vfile_object_init() - Handle failures from acl_backend_vfile_get_local_dir()
Timo Sirainen [Fri, 19 Dec 2025 11:28:05 +0000 (13:28 +0200)]
virtual: Skip nonexistent mailboxes also in race conditions
If mailbox is deleted between mailbox listing and when it's opened, it
shows up as nonexistent. It should be ignored rather than failing.
Timo Sirainen [Fri, 19 Dec 2025 11:27:28 +0000 (13:27 +0200)]
virtual: Skip \Nonexistent mailboxes when matching wildcards
\Noselect mailboxes were already skipped.
Stephan Bosch [Fri, 19 Dec 2025 03:02:14 +0000 (04:02 +0100)]
lib: test-unicode-break - Fix potential crash on empty lines
Aki Tuomi [Wed, 10 Dec 2025 07:09:02 +0000 (09:09 +0200)]
quota: Check that quota_mail_size is not 0
Aki Tuomi [Tue, 9 Dec 2025 11:25:59 +0000 (13:25 +0200)]
quota: Change MAIL_ERROR_LIMIT to MAIL_ERROR_TOOBIG if size quota is exceeded
Aki Tuomi [Tue, 9 Dec 2025 11:25:35 +0000 (13:25 +0200)]
lib-storage: Add MAIL_ERROR_TOOBIG
Indicates that a size limit has been exceeded.
Aki Tuomi [Tue, 9 Dec 2025 11:17:13 +0000 (13:17 +0200)]
lmtp: Advertize SIZE capability when needed
Aki Tuomi [Tue, 9 Dec 2025 08:02:15 +0000 (10:02 +0200)]
imap: Add APPENDLIMIT capability if there is limit
Aki Tuomi [Tue, 9 Dec 2025 07:47:15 +0000 (09:47 +0200)]
quota: Return quota_mail_size for mail_user_get_mail_max_size()
Aki Tuomi [Wed, 10 Dec 2025 06:56:37 +0000 (08:56 +0200)]
quota: Retain quota settings longer
This simplifies following commit
Aki Tuomi [Tue, 9 Dec 2025 07:46:48 +0000 (09:46 +0200)]
lib-storage: Add mail_user_get_mail_max_size()
Returns the maximum size a mail can be for the user.
Marco Bettini [Tue, 9 Dec 2025 09:18:19 +0000 (09:18 +0000)]
auth: Set CRYPT as default passdb_default_password_scheme
Marco Bettini [Tue, 16 Dec 2025 09:47:03 +0000 (09:47 +0000)]
auth: Make the default passdb_static/passdb_default_password_scheme = PLAIN explicit
in preperation for the change of the global passdb_default_password_scheme default
Marco Bettini [Tue, 16 Dec 2025 09:49:16 +0000 (09:49 +0000)]
auth: Fix crypt -> CRYPT in passdb_passwd, passdb_ldap defaults for passdb_default_password_scheme
Marco Bettini [Wed, 26 Nov 2025 17:35:58 +0000 (17:35 +0000)]
auth: Fix dashes to underscores in driver names in filters
Tbis is required specifically for passwd-file driver defaults to be properly picked up
under the filter name passdb_passwd_filter, instead than passdb_passwd-filter
Aki Tuomi [Mon, 15 Dec 2025 09:44:10 +0000 (11:44 +0200)]
lib-var-expand: Handle default rule as error
Aki Tuomi [Mon, 15 Dec 2025 10:25:21 +0000 (12:25 +0200)]
lib-var-expand: Do not clobber error in var_expand_parser_error()
Aki Tuomi [Mon, 15 Dec 2025 09:52:18 +0000 (11:52 +0200)]
lib-var-expand: Check that there is program before switching it as previous program
Aki Tuomi [Mon, 15 Dec 2025 09:45:15 +0000 (11:45 +0200)]
lib-var-expand: Remove stray 'y'
It was left there by accident in
07838de2f838fce4f23c45059242e2bd4be23e73
Aki Tuomi [Mon, 15 Dec 2025 09:30:27 +0000 (11:30 +0200)]
lib-var-expand: Reuse previous literal when adding new one
If the previous program was already a literal-only program,
append next literal to it, instead of creating a new program.
Aki Tuomi [Sat, 13 Dec 2025 15:04:45 +0000 (17:04 +0200)]
lib-var-expand: expansion-program - Limit input size
Allow at most 8192 bytes.
Aki Tuomi [Thu, 11 Dec 2025 07:01:14 +0000 (09:01 +0200)]
m4: dovecot.m4 - Add Control-flow protection support
Aki Tuomi [Thu, 11 Dec 2025 06:53:27 +0000 (08:53 +0200)]
m4: dovecot.m4 - Add Straight-Line Speculation (SLS) mitigation support
Aki Tuomi [Thu, 11 Dec 2025 06:45:05 +0000 (08:45 +0200)]
m4: dovecot.m4 - Add LTO support
alexandre.roux [Wed, 3 Dec 2025 05:00:47 +0000 (14:00 +0900)]
lib-settings: Add comments to settings-history-core.txt
alexandre.roux [Tue, 18 Nov 2025 08:24:40 +0000 (17:24 +0900)]
lib-settings: Update settings-history.py to skip comments from input_file
alexandre.roux [Wed, 3 Dec 2025 08:41:21 +0000 (17:41 +0900)]
lib-settings: Update settings-history.py to parse both Pro and CE tag