]>
git.ipfire.org Git - thirdparty/dovecot/core.git/log
Stephan Bosch [Fri, 18 Jun 2021 14:52:26 +0000 (16:52 +0200)]
lib-smtp: smtp-server-connection - Allow username/ehlo to be set before smtp_server_connection_login().
This allows setting the proxy data early.
Stephan Bosch [Fri, 18 Jun 2021 17:25:43 +0000 (19:25 +0200)]
lib-smtp: Reformat smtp-server.h.
Stephan Bosch [Fri, 18 Jun 2021 14:31:08 +0000 (16:31 +0200)]
submission: Reformat submission-client.h.
Stephan Bosch [Fri, 18 Jun 2021 14:30:52 +0000 (16:30 +0200)]
submission: Reformat submission-client.c.
Stephan Bosch [Wed, 23 Jun 2021 22:19:16 +0000 (00:19 +0200)]
login-common: Add support for recording rawlog of connection between proxy and backend.
Timo Sirainen [Wed, 21 Jul 2021 14:14:26 +0000 (17:14 +0300)]
doveadm: Mark fs_cmd_help() with ATTR_NORETURN
This helps static analyzers understand that the function doesn't return.
Timo Sirainen [Wed, 21 Jul 2021 14:12:05 +0000 (17:12 +0300)]
doveadm: Avoid passing NULL to memcpy() even though zero bytes are copied
Makes static analyzers happier.
Timo Sirainen [Mon, 19 Jul 2021 13:38:08 +0000 (16:38 +0300)]
doveadm: Remove dead assignment
Timo Sirainen [Thu, 22 Apr 2021 08:09:49 +0000 (11:09 +0300)]
lib: Use 32 byte buffer for getting randomness
This reduces the number of syscalls when small amount of randomness is
requested, like i_rand*() calls using only 4 bytes at a time.
Timo Sirainen [Thu, 10 Jun 2021 09:16:20 +0000 (12:16 +0300)]
doveadm: Remove code related to obsolete doveadm_mail_cmd handling
struct doveadm_mail_cmd couldn't be completely removed since v2 mail
commands are still converted to it.
Timo Sirainen [Thu, 10 Jun 2021 09:06:40 +0000 (12:06 +0300)]
doveadm sync/backup/dsync-server: Convert to v2 command
Timo Sirainen [Thu, 10 Jun 2021 08:51:51 +0000 (11:51 +0300)]
doveadm batch: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 22:14:14 +0000 (01:14 +0300)]
doveadm: Remove struct doveadm_cmd and related code
Timo Sirainen [Wed, 9 Jun 2021 22:09:34 +0000 (01:09 +0300)]
doveadm: Remove doveadm_cmd_ver2.old_cmd
Timo Sirainen [Wed, 9 Jun 2021 22:08:16 +0000 (01:08 +0300)]
doveadm proxy: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 22:03:46 +0000 (01:03 +0300)]
doveadm oldstats: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 21:59:53 +0000 (00:59 +0300)]
doveadm stop/reload: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 21:58:45 +0000 (00:58 +0300)]
doveadm fs: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 21:45:43 +0000 (00:45 +0300)]
doveadm auth cache flush: Convert auth-server command to v2
Timo Sirainen [Wed, 9 Jun 2021 21:42:38 +0000 (00:42 +0300)]
doveadm auth: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 21:18:17 +0000 (00:18 +0300)]
doveadm instance: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 21:05:28 +0000 (00:05 +0300)]
doveadm log: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 21:01:00 +0000 (00:01 +0300)]
doveadm replicator: Convert to v2 commands
Timo Sirainen [Wed, 9 Jun 2021 20:48:10 +0000 (23:48 +0300)]
doveadm config: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 20:45:51 +0000 (23:45 +0300)]
doveadm exec: Convert to v2 command
Timo Sirainen [Thu, 10 Jun 2021 11:23:46 +0000 (14:23 +0300)]
doveadm: Add CMD_FLAG_NO_UNORDERED_OPTIONS
Timo Sirainen [Wed, 9 Jun 2021 20:44:29 +0000 (23:44 +0300)]
doveadm: Add CMD_FLAG_NO_OPTIONS
This allows command to process all parameters, including parameters starting
with "-".
Timo Sirainen [Wed, 9 Jun 2021 20:39:54 +0000 (23:39 +0300)]
doveadm: Split off doveadm_cmd_process_options()
Timo Sirainen [Wed, 9 Jun 2021 20:37:19 +0000 (23:37 +0300)]
doveadm: Reformat doveadm-cmd.c
Timo Sirainen [Wed, 9 Jun 2021 20:21:27 +0000 (23:21 +0300)]
doveadm help: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 20:13:30 +0000 (23:13 +0300)]
doveadm dump: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 20:10:08 +0000 (23:10 +0300)]
doveadm dump: Change doveadm_cmd_dump.cmd() API to be simpler
Timo Sirainen [Wed, 9 Jun 2021 20:02:36 +0000 (23:02 +0300)]
doveadm pw: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 19:55:55 +0000 (22:55 +0300)]
doveadm mailbox mutf7: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 19:47:35 +0000 (22:47 +0300)]
doveadm sis deduplicate/find: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 19:42:54 +0000 (22:42 +0300)]
doveadm zlibconnect: Convert to v2 command
Timo Sirainen [Wed, 9 Jun 2021 19:39:55 +0000 (22:39 +0300)]
doveadm: Code cleanup - Add doveadm_cmdline_commands_ver2[]
Timo Sirainen [Thu, 10 Jun 2021 13:56:06 +0000 (16:56 +0300)]
doveadm: Support building ARRAY type mail command parameters
Timo Sirainen [Thu, 10 Jun 2021 13:55:04 +0000 (16:55 +0300)]
doveadm: Fix building IP/INT64 type mail command parameters
Timo Sirainen [Thu, 10 Jun 2021 13:51:58 +0000 (16:51 +0300)]
doveadm: Split off doveadm_cmd_parse_arg()
Timo Sirainen [Thu, 3 Dec 2020 17:20:32 +0000 (19:20 +0200)]
lib: Fix assert-crash when destroying ioloop that has active context
Normally the ioloop shouldn't have an active context at deinit, but it
seems to be possible in some situations. It's not really bad anyway, so
just allow it.
Fixes:
Panic: file ioloop.c: line 928 (io_loop_destroy): assertion failed: (ioloop->cur_ctx == NULL)
Timo Sirainen [Mon, 19 Jul 2021 11:56:47 +0000 (14:56 +0300)]
lib-mail: Fix memory leak in istream-header-filter
Broken by
1c1b77dbf9a548aac788efb76973ce2d0fa6c732
Timo Sirainen [Mon, 19 Jul 2021 10:54:24 +0000 (13:54 +0300)]
lib: data-stack - t_try_realloc() - Add missing data_stack_last_buffer_reset() call
This fixes incorrect "buffer overflow" panics with DEBUG builds.
Timo Sirainen [Mon, 19 Jul 2021 10:52:58 +0000 (13:52 +0300)]
lib: data-stack - data_stack_last_buffer_reset(() - Add comments and an assert
This clarifies how the function is expected to work.
Markus Valentin [Mon, 12 Jul 2021 12:26:38 +0000 (14:26 +0200)]
lib-storage: Use escaped name length to calculate truncation margin
This fixes corruption of mailbox names when the storage_name_escape_char
has been part of the parent folder name.
Broken by
5dd81d83d8d9120ed2a74d5bd2aa62622885b49c
Aki Tuomi [Mon, 12 Jul 2021 10:40:58 +0000 (13:40 +0300)]
lib-lua: Fix LIBDICT_LUA variable usage
It needs to be appended to, not set again. Broken by
3d0b7e9bb59e3dc41fd5a4d09832eedea7a92933 .
Aki Tuomi [Thu, 8 Jul 2021 09:24:47 +0000 (12:24 +0300)]
lib-lua: Only link libdict_lua if it's available
Aki Tuomi [Thu, 8 Jul 2021 08:10:38 +0000 (11:10 +0300)]
plugins/fts: Restore fts_indexer_cmd
It was removed in
cf114f90e0ba25c18db846ee582e3a130bd52949 and that
broke some FTS plugins.
Timo Sirainen [Tue, 22 Jun 2021 11:28:34 +0000 (13:28 +0200)]
lib-dict: Fix linking when building without Lua
Linking didn't work on some non-Linux OSes (non-GNU linkers?)
Timo Sirainen [Fri, 4 Jun 2021 08:16:53 +0000 (11:16 +0300)]
lib-compression: istream-zstd - Make sure parent stream error isn't overwritten
This could have happened if the parent istream failed before the zstd header
was read. Practically this didn't happen currently, because the initial
parent stream error was normally already handled by istream-decompress
before istream-zstd was even called.
Timo Sirainen [Fri, 4 Jun 2021 08:16:22 +0000 (11:16 +0300)]
lib-compression: istream-zlib - Fix parent stream error handling near EOF
This happened when gz stream (including trailer) was fully read, but the
final check to see if there is a concatenated gz stream afterwards failed
due to parent istream failure. In this case the error was ignored and
istream returned success, truncating any potential concatenated istream
input. This situation was very unlikely to happen.
Timo Sirainen [Thu, 27 May 2021 16:34:50 +0000 (19:34 +0300)]
lib-mail: Fix istream-header-filter snapshotting
Timo Sirainen [Thu, 17 Jun 2021 16:55:56 +0000 (19:55 +0300)]
lib: Add istream_snapshot.free() to allow more complex snapshots
Markus Valentin [Tue, 15 Jun 2021 10:21:22 +0000 (12:21 +0200)]
lib-storage: Make use of MAIL_INDEX_VIEW_SYNC_FLAG_2ND_INDEX
Markus Valentin [Tue, 15 Jun 2021 10:19:00 +0000 (12:19 +0200)]
lib-index: Introduce MAIL_INDEX_VIEW_SYNC_FLAG_2ND_INDEX
This flag is used to make sure secondary views flags-index can work
properly without emitting warnings about inconsistency. If an
inconsistency is encountered fix it by fully syncing.
Markus Valentin [Tue, 15 Jun 2021 06:59:17 +0000 (08:59 +0200)]
Revert "lib-storage: Always fix inconsistency when syncing private flags index"
This reverts commit
986d9cbbecffd836d977b6ad956b04e3ca606677 .
This is reverted because storing flags on private indexes no longer send
untagged replies.
Markus Valentin [Thu, 1 Jul 2021 08:46:05 +0000 (10:46 +0200)]
acl: Ignore acls in acl_lookup_dict_rebuild_add_backend if ignore_acls is set
In case an namespace has been configured to ignore ACLs also respect
that when acl_lookup_dict_rebuild is called.
Co-Authored-By: Vincent Brillault <vincent.brillault@cern.ch>
Stephan Bosch [Tue, 1 Jun 2021 22:40:19 +0000 (00:40 +0200)]
lib-smtp: test-smtp-payload - Set all timeouts to CLIENT_PROGRESS_TIMEOUT.
This prevents connect and idle timeouts from triggering earlier than the
progress timeout.
Michael M Slusarz [Tue, 22 Jun 2021 17:52:02 +0000 (11:52 -0600)]
imap: PREVIEW responses need trailing space
2.3.15 regression
Before 2.3.15, there was this same buggy behavior in error cases; 2.3.15
moved that buggy behavior to the success code path
DOP-2463
Timo Sirainen [Mon, 14 Jun 2021 20:46:48 +0000 (23:46 +0300)]
doveadm-server: Add log prefix to logs written to client
Timo Sirainen [Mon, 14 Jun 2021 20:43:11 +0000 (23:43 +0300)]
doveadm-server: Simplify writing log output to client
Timo Sirainen [Mon, 14 Jun 2021 18:14:13 +0000 (20:14 +0200)]
lib: Fix log prefix in internal handler when log handler has been overridden
Adds back mail_log_prefix to doveadm mail commands when doveadm-server was
accessed via TCP.
Originally broken by
c9dd53f7180a78668cbc1e6eb34d5b1722beccb9
Siavash Tavakoli [Fri, 4 Jun 2021 22:00:21 +0000 (23:00 +0100)]
dict-file: Make sure home_dir doesn't change during operations
file_dict is initialized for a specific user. Keep record of the user's
home_dir and check for all dict operations that the user did not change.
Siavash Tavakoli [Wed, 2 Jun 2021 15:17:22 +0000 (16:17 +0100)]
global: Remove dict_settings.home_dir
Allows dict to be shared across users. Dict operations use
dict_op_settings.home_dir if set.
Siavash Tavakoli [Wed, 26 May 2021 14:18:20 +0000 (15:18 +0100)]
dict: Split protocol command arguments in dict_command_input()
Instead of duplicating code and splitting in each command functions
separately.
Siavash Tavakoli [Wed, 26 May 2021 00:41:51 +0000 (01:41 +0100)]
lib-dict: Make sure username is valid as well when checking key prefix
If this is a private key, username must be non-empty.
Siavash Tavakoli [Mon, 24 May 2021 11:54:58 +0000 (12:54 +0100)]
dict: Remove dict_connection.username and dict_settings.username
- dict should be user agnostic. dict operations have username.
- same for dict connection
- also removes username from dict process' log prefix
Siavash Tavakoli [Thu, 3 Jun 2021 18:59:23 +0000 (19:59 +0100)]
dict: Add username field for command events
To prepare for connection username removal in next commit. Instead of
adding username field for the parent event, add it in command events.
Commands can now be run for different users. Having the same username
field as the one used in initialization can be wrong.
Siavash Tavakoli [Mon, 24 May 2021 10:47:15 +0000 (11:47 +0100)]
dict-client: Do not send username in initial handshake
Dict commands that need username have it included in their arguments now.
Siavash Tavakoli [Mon, 24 May 2021 10:58:44 +0000 (11:58 +0100)]
dict-fs: Remove unused fs_dict.username
Siavash Tavakoli [Mon, 24 May 2021 10:58:02 +0000 (11:58 +0100)]
dict-redis: Remove unused redis_dict.username
Siavash Tavakoli [Mon, 24 May 2021 10:57:18 +0000 (11:57 +0100)]
dict-memcached-ascii: Remove unused memcached_ascii_dict.username
Siavash Tavakoli [Mon, 24 May 2021 10:56:29 +0000 (11:56 +0100)]
dict-sql: Remove unused sql_dict.username
Siavash Tavakoli [Mon, 24 May 2021 10:54:56 +0000 (11:54 +0100)]
dict-ldap: Remove unused ldap_dict.username
Siavash Tavakoli [Thu, 3 Jun 2021 20:27:31 +0000 (21:27 +0100)]
dict: Add dict_event_create
Helper function for dict events. If dict_op_settings has username set, adds
it as a field.
Siavash Tavakoli [Thu, 3 Jun 2021 20:18:03 +0000 (21:18 +0100)]
dict-client: Send username in commands
Lookup, iterate_begin, and transaction_begin need username. This bumps
dict protocol's major version to 3.
Siavash Tavakoli [Thu, 3 Jun 2021 20:16:22 +0000 (21:16 +0100)]
dict-redis: Use dict_op_settings to get full key
Switch from dict.username to dict_op_settings.username. Also, ensure
that username is escaped.
Siavash Tavakoli [Thu, 3 Jun 2021 20:14:51 +0000 (21:14 +0100)]
dict-memcached-ascii: Use dict_op_settings to get full key
Switch from dict.username to dict_op_settings.username.
Siavash Tavakoli [Thu, 3 Jun 2021 20:12:27 +0000 (21:12 +0100)]
dict-fs: Use dict_op_settings to get full key
Switch from dict.username to dict_op_settings.username.
Siavash Tavakoli [Thu, 3 Jun 2021 19:58:05 +0000 (20:58 +0100)]
dict: Use dict_op_settings in backends
- Use dict_op_settings in dict API functions
- forward the settings object to backends for dict lookup/iterate
- Update backends to use dict_op_settings
Siavash Tavakoli [Thu, 3 Jun 2021 17:31:57 +0000 (18:31 +0100)]
notify-status: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:32:50 +0000 (18:32 +0100)]
last-login: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:30:17 +0000 (18:30 +0100)]
quota: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 18:32:26 +0000 (19:32 +0100)]
dict: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:33:21 +0000 (18:33 +0100)]
acl: Initialize dict_op_settings for dict lookup
Siavash Tavakoli [Thu, 3 Jun 2021 17:34:26 +0000 (18:34 +0100)]
lib-oauth2: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:41:14 +0000 (18:41 +0100)]
lib-dict: lua: Initialize dict_op_settings for dict operations
- Add new mandatory argument for lookup, set, and transaction_begin.
- Use the username to initialize dict_op_settings passed to lib-dict API
Siavash Tavakoli [Thu, 1 Jul 2021 19:39:41 +0000 (20:39 +0100)]
lib-dict-extra: test-dict-fs: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:39:39 +0000 (18:39 +0100)]
lib-dict-backend: test-dict-sql: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:38:50 +0000 (18:38 +0100)]
lib-dict: test-dict-client: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:36:04 +0000 (18:36 +0100)]
lib-storage: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:35:28 +0000 (18:35 +0100)]
lib-fs: Initialize dict_op_settings for dict operations
Siavash Tavakoli [Thu, 3 Jun 2021 17:13:31 +0000 (18:13 +0100)]
auth: userdb-dict: Initialize dict_op_settings for dict iterate
Siavash Tavakoli [Thu, 3 Jun 2021 17:11:47 +0000 (18:11 +0100)]
auth: db-dict: Initialize dict_op_settings for dict lookup
Siavash Tavakoli [Thu, 3 Jun 2021 11:53:08 +0000 (12:53 +0100)]
doveadm dict: Initialize & use dict_op_settings for dict commands
Sets the username in cmd_dict_init_full and use the settings struct for dict
operations.
Siavash Tavakoli [Wed, 2 Jun 2021 23:06:44 +0000 (00:06 +0100)]
lib-storage: Add mail_user.dict_op_set and mail_user_get_dict_op_settings()
Used to initialize or obtain dict_op_settings for the user.
Siavash Tavakoli [Fri, 4 Jun 2021 14:39:05 +0000 (15:39 +0100)]
lib-storage: mail-user: Clarify mail_user_get_home() usage string
Explicitly comment about returned string lifetime.
Siavash Tavakoli [Tue, 18 May 2021 16:52:55 +0000 (17:52 +0100)]
dict: Optionally accept username in lookup/iterate/begin dict protocol commands
Only an optional field, don't actually use it.
Siavash Tavakoli [Fri, 28 May 2021 10:57:39 +0000 (11:57 +0100)]
dict-file: Remove file_dict_iterate_path struct
No need for the struct since support for multi-path iterate is removed.
So path and path length can be merged with file_dict_iterate_context.
Siavash Tavakoli [Wed, 26 May 2021 12:47:50 +0000 (13:47 +0100)]
dict backends: Remove multi-path handling code in dict iteration
With mutli-path iteration support being dropped from dict protocol, these
can be cleaned up.