]>
git.ipfire.org Git - thirdparty/dovecot/core.git/log
Karl Fleischmann [Thu, 24 Mar 2022 09:30:32 +0000 (10:30 +0100)]
config: Notify about obsolete auth_debug setting
Karl Fleischmann [Wed, 23 Mar 2022 11:04:33 +0000 (12:04 +0100)]
doveadm-auth: Consolidate auth debug logging condition
This should enable the relevant places to check for any of the
`auth_debug` setting, enabling the debug mode via -D or an appropriate
`log_debug` value in a consistent manner.
Karl Fleischmann [Tue, 15 Mar 2022 13:49:58 +0000 (14:49 +0100)]
auth: Remove extraneous debug check when calling e_debug()
Remove checks for debug setting when calling e_debug() as it is already
doing the necessary check.
Aki Tuomi [Mon, 4 Apr 2022 16:12:47 +0000 (19:12 +0300)]
lib-dcrypt: test-stream - Ensure file is v2 in test_read_garbage
Karl Fleischmann [Fri, 25 Mar 2022 13:54:02 +0000 (14:54 +0100)]
login-common: Add login_auth_socket_path setting
This setting allows to set a default socket path for login processes
without the need to define it for each one individually. It can be
overwritten by explicitly giving it via the existing methods.
Karl Fleischmann [Fri, 1 Apr 2022 08:49:10 +0000 (10:49 +0200)]
submission-login: Remove direct access of auth_debug
SMTP debugging is not related to authentication so using auth_debug has
been wrong to use in the first place.
Martti Rannanjärvi [Mon, 4 Apr 2022 16:30:11 +0000 (19:30 +0300)]
config: old-set-parser - Remove quota_vsizes
No need to warn about obsolete plugin settings.
Martti Rannanjärvi [Mon, 4 Apr 2022 16:29:15 +0000 (19:29 +0300)]
example-config: 90-quota.conf - Remove quota_vsizes
Marco Bettini [Tue, 22 Mar 2022 10:06:51 +0000 (10:06 +0000)]
lib-storage: mailbox_match_plugin_exclude() - Consider namespaces while matching
For namespaces with inbox=yes, the match with the rule will be attempted with
both the virtual mailbox names and the bare mailbox name.
Aki Tuomi [Sun, 27 Mar 2022 17:34:26 +0000 (20:34 +0300)]
mail-crypt: Use mail_user_getenv_bool() for MAIL_CRYPT_REQUIRE_ENCRYPTED_USER_KEY
Aki Tuomi [Sun, 27 Mar 2022 17:32:48 +0000 (20:32 +0300)]
mail-crypt: Replace mail_crypt_acl_secure_sharing_enabled() with mail_user_getenv_bool()
Aki Tuomi [Fri, 25 Mar 2022 08:21:05 +0000 (10:21 +0200)]
lib-master: ssl_options - Remove support for no_compression
This has been default for a while now.
Aki Tuomi [Mon, 28 Mar 2022 10:29:13 +0000 (13:29 +0300)]
dict: Support only v4 protocol
Remove all code for old dict protocol versions.
Aki Tuomi [Fri, 25 Mar 2022 07:14:35 +0000 (09:14 +0200)]
dict: Remove DICT_PROTOCOL_CMD_COMMIT_ASYNC
Nothing is using it.
Aki Tuomi [Fri, 25 Mar 2022 07:29:20 +0000 (09:29 +0200)]
tcpwrap: Remove tcpwrap support
Aki Tuomi [Fri, 25 Mar 2022 07:20:16 +0000 (09:20 +0200)]
login-common: Merge client_connected() to client_connected_finish()
Does not need to be separate anymore
Aki Tuomi [Fri, 25 Mar 2022 07:19:12 +0000 (09:19 +0200)]
login-common: Remove login_access_sockets
Aki Tuomi [Sun, 27 Mar 2022 17:21:33 +0000 (20:21 +0300)]
auth: Remove checkpassword driver
Aki Tuomi [Fri, 25 Mar 2022 08:09:57 +0000 (10:09 +0200)]
quota: count - Always count with virtual size
This code was needed because it was used by dict quota,
which is now removed.
Aki Tuomi [Fri, 25 Mar 2022 08:09:04 +0000 (10:09 +0200)]
quota: Remove plugin/quota_vsizes setting
Aki Tuomi [Fri, 25 Mar 2022 07:55:57 +0000 (09:55 +0200)]
quota: Add use_vsize variable to quota_backend
Aki Tuomi [Thu, 17 Mar 2022 07:44:03 +0000 (09:44 +0200)]
quota-clone: Add quota_clone_unset
Unsets quota information first. Needed for dict backends that do not
support upserting.
Aki Tuomi [Tue, 8 Mar 2022 13:11:16 +0000 (15:11 +0200)]
quota-clone: Use events for error logging
Aki Tuomi [Tue, 8 Mar 2022 10:39:50 +0000 (12:39 +0200)]
quota: Remove quota-dirsize
Aki Tuomi [Tue, 8 Mar 2022 10:07:55 +0000 (12:07 +0200)]
example-config: Include documentation for quota_clone
Aki Tuomi [Tue, 8 Mar 2022 10:05:08 +0000 (12:05 +0200)]
example-config: Document quota=count
Aki Tuomi [Tue, 8 Mar 2022 10:03:43 +0000 (12:03 +0200)]
quota: Remove quota-dict
Martti Rannanjärvi [Tue, 29 Mar 2022 03:50:50 +0000 (06:50 +0300)]
mail-crypt: fs_crypt_load_keys() - Check list for NULL before dereference
NULL check was after dereference here, found by Coverity.
Karl Fleischmann [Mon, 28 Mar 2022 12:39:18 +0000 (14:39 +0200)]
auth: Fix return value of auth worker input processing callback
Fix return value of input args callback in shutdown/restart cases to
stop further input processing.
sergey.kitov [Tue, 8 Mar 2022 11:38:39 +0000 (13:38 +0200)]
lib-storage: Expunge mails in batches when deleting a mailbox.
sergey.kitov [Tue, 8 Mar 2022 11:30:20 +0000 (13:30 +0200)]
imap: Remove imap_search_seqset_iter_* functions from imap.
sergey.kitov [Tue, 8 Mar 2022 10:19:04 +0000 (12:19 +0200)]
imap: Use batched seqset iteration from lib-storage.
sergey.kitov [Tue, 8 Mar 2022 09:58:41 +0000 (11:58 +0200)]
imap: Whitespace cleanup.
sergey.kitov [Tue, 15 Mar 2022 14:51:36 +0000 (16:51 +0200)]
lib-storage: Replace AUTOEXPUNGE_BATCH_SIZE with MAIL_EXPUNGE_BATCH_SIZE.
sergey.kitov [Tue, 8 Mar 2022 10:13:05 +0000 (12:13 +0200)]
lib-storage: Add MAIL_EXPUNGE_BATCH_SIZE constant.
sergey.kitov [Wed, 23 Mar 2022 11:38:00 +0000 (13:38 +0200)]
lib-storage: Fix seqset iterator initialization for the case with message_count==0
sergey.kitov [Tue, 8 Mar 2022 09:52:31 +0000 (11:52 +0200)]
lib-storage: Add mail_search_seqset_iter_*() API for batched iteration of a seqset
sergey.kitov [Thu, 17 Feb 2022 08:33:19 +0000 (10:33 +0200)]
lib-storage: Whitespace cleanup.
Aki Tuomi [Fri, 25 Mar 2022 12:07:40 +0000 (14:07 +0200)]
mail-crypt: Do not attempt to load empty keys
Aki Tuomi [Fri, 18 Mar 2022 13:39:57 +0000 (15:39 +0200)]
mail-crypt: fs-crypt - Add unit tests for fs-crypt
Aki Tuomi [Fri, 25 Mar 2022 07:04:01 +0000 (09:04 +0200)]
fs-mail-crypt: Allow missing keys if mail_crypt_save_version = 0
Aki Tuomi [Fri, 18 Mar 2022 13:39:29 +0000 (15:39 +0200)]
mail-crypt: fs-crypt - Support reading maybe encrypted files
Aki Tuomi [Fri, 18 Mar 2022 08:01:49 +0000 (10:01 +0200)]
mail-crypt: fs-crypt - Require public_key for encryption
Adds parameter maybe to allow not requiring it.
Aki Tuomi [Fri, 18 Mar 2022 13:33:02 +0000 (15:33 +0200)]
mail-crypt: fs-crypt - Allow using without any parameters
It does not require any and this check would break
crypt:posix usage.
Aki Tuomi [Mon, 21 Mar 2022 14:19:05 +0000 (16:19 +0200)]
lib-dcrypt: test-stream - Try read invalid stream
Test that reading stream with correct magic but invalid
data fails correctly.
Aki Tuomi [Mon, 21 Mar 2022 13:41:48 +0000 (15:41 +0200)]
lib-dcrypt: istream-decrypt - Change EINVAL to EIO, except when it's not encrypted
Makes it easier to detect unencrypted streams.
Aki Tuomi [Mon, 21 Mar 2022 15:36:00 +0000 (17:36 +0200)]
lib: Add istream-noop
A simple wrapper class that allows using istream as a child stream.
Aki Tuomi [Tue, 22 Mar 2022 11:08:49 +0000 (13:08 +0200)]
lib-test: test_istream_find - Ensure that stream is not NULL
Aki Tuomi [Tue, 22 Mar 2022 11:08:26 +0000 (13:08 +0200)]
lib: i_stream_get_name - Ensure that stream is not NULL
Karl Fleischmann [Thu, 24 Mar 2022 09:20:33 +0000 (10:20 +0100)]
auth: Handle return value of connection_client_connect()
Marco Bettini [Thu, 24 Mar 2022 09:45:37 +0000 (09:45 +0000)]
lib: str_begins*() - Suppress static code analyzer false positives
The code analyzer is not able to properly infer that str_begins_builtin_success()
cannot be invoked when the previous strncmp() does not match. It then complies
about overrun pointers arithmetic that is just not possible to happen.
Karl Fleischmann [Tue, 1 Mar 2022 11:07:08 +0000 (12:07 +0100)]
auth: Rename auth-worker-client -> auth-worker-server
The previous naming convention of auth-worker-server and
auth-worker-client was confusing enough to justify a rename.
Karl Fleischmann [Tue, 1 Mar 2022 10:10:08 +0000 (11:10 +0100)]
auth: Rename auth-worker-server -> auth-worker-connection
The previous naming convention of auth-worker-server and
auth-worker-client was confusing enough to justify a rename.
Karl Fleischmann [Mon, 21 Feb 2022 15:11:39 +0000 (16:11 +0100)]
auth: Clean up naming for auth worker connections
Similar to the indexer this commit consolidates the naming of the
auth-worker setup into a header file. This reduces the effort to write
the appropriate name correctly in 4 different places.
Karl Fleischmann [Fri, 18 Feb 2022 15:33:01 +0000 (16:33 +0100)]
auth: Remove auth_worker_max_count_setting
Replace obsolete `auth_worker_max_count` setting with `service
auth-worker { process_limit }`.
Karl Fleischmann [Tue, 22 Feb 2022 13:51:50 +0000 (14:51 +0100)]
auth: Set process limit via handshake
Append process_limit value in handshake between auth-worker client and
server. The server now uses this value to determine how many workers to
spawn.
Karl Fleischmann [Mon, 28 Feb 2022 09:30:57 +0000 (10:30 +0100)]
auth: Make sure auth worker idle count is valid
Make obvious corruptions to the idle auth worker counter immediately
visible by asserting that this unsigned value never gets decremented
past 0.
Karl Fleischmann [Fri, 4 Mar 2022 14:55:12 +0000 (15:55 +0100)]
auth: Improve consistency with auth-worker timeout values
- Split values into numeric value and factor for next larger timeframe
(i.e. 60 for minutes, 1000 for seconds), and
- order them to be numeric value first, factor last for consistency.
Karl Fleischmann [Fri, 18 Feb 2022 10:41:47 +0000 (11:41 +0100)]
auth: Refactor auth-worker to use connection API
This change allows an easier exchange of the process_limit value from
the auth-worker-client process to the auth-worker-server.
Karl Fleischmann [Tue, 1 Mar 2022 09:39:32 +0000 (10:39 +0100)]
auth: Remove unused auth_fields_import()
Karl Fleischmann [Tue, 1 Mar 2022 09:35:10 +0000 (10:35 +0100)]
auth: Refactor auth worker callbacks to use arguments
To prepare a refactor of the auth worker input handling to use the
connection API this commit changes the signature of the auth worker
callback to use an arguments array instead of the full line as well as
all relevant callback functions.
Karl Fleischmann [Tue, 1 Mar 2022 09:28:25 +0000 (10:28 +0100)]
auth: Add arguments based auth field importers
This commit prepares a refactor of authentication callbacks to use
arguments arrays instead of full lines.
Karl Fleischmann [Mon, 28 Feb 2022 13:31:15 +0000 (14:31 +0100)]
auth: Clarify auth worker connection variable naming
Rename `conn` to `worker` to make distinction clear between generic
connection and auth_worker_connection respectively.
Karl Fleischmann [Fri, 18 Feb 2022 09:11:14 +0000 (10:11 +0100)]
auth: auth_worker_server - Use connection.h structures
This commit prepares a refactor of auth-worker-server to use the
connection API by introducing the connection.h structures.
Keep the lookup timeout extra in the worker as there are more distinct
use-cases for it than the connection API would handle.
Karl Fleischmann [Wed, 9 Mar 2022 12:49:13 +0000 (13:49 +0100)]
auth: Remove unreached return statement
Karl Fleischmann [Thu, 17 Feb 2022 11:14:01 +0000 (12:14 +0100)]
auth: Whitespace fix
Timo Sirainen [Sun, 19 Apr 2020 13:11:47 +0000 (16:11 +0300)]
global: Replace strncasecmp() with str_begins_icase*()
Timo Sirainen [Sun, 19 Apr 2020 12:31:35 +0000 (15:31 +0300)]
lib: Add str_begins_icase*() and str_match_icase()
Timo Sirainen [Sun, 19 Apr 2020 13:13:02 +0000 (16:13 +0300)]
lib: Remove strcasecmp() / strncasecmp() compatibility functions
We don't support any OS where these don't exist.
Timo Sirainen [Fri, 10 Apr 2020 16:13:07 +0000 (19:13 +0300)]
global: Rename str_begins_suffix() to str_begins() and use it everywhere
Timo Sirainen [Fri, 10 Apr 2020 18:00:34 +0000 (21:00 +0300)]
imap: notify - Replace strncmp() with str_begins()
Timo Sirainen [Fri, 10 Apr 2020 16:45:44 +0000 (19:45 +0300)]
global: Use str_begins_with()
Timo Sirainen [Fri, 10 Apr 2020 16:56:14 +0000 (19:56 +0300)]
lib: Add str_begins_suffix()
Timo Sirainen [Fri, 10 Apr 2020 16:53:02 +0000 (19:53 +0300)]
lib: test-strfuncs - Add tests for literal versions of str_begins_with()
Timo Sirainen [Fri, 10 Apr 2020 16:50:54 +0000 (19:50 +0300)]
lib: Rename str_begins() to str_begins_with() and add compatibility macro
Timo Sirainen [Fri, 10 Apr 2020 16:08:24 +0000 (19:08 +0300)]
lib: Fix str_begins() unit test
c05976729405180c565aad464cb494c731a640b3 replaced all strncmp() calls to
str_begins(). This caused str_begins() to be tested against str_begins()
itself, which obviously always works. Reverted the change.
Timo Sirainen [Sun, 19 Apr 2020 13:10:30 +0000 (16:10 +0300)]
submission-login: proxy: Check for STARTTLS capability exactly, not as prefix
Timo Sirainen [Thu, 14 Oct 2021 22:18:17 +0000 (00:18 +0200)]
imap-hibernate: Break out of userdb_fields parsing loop once auth_user is found
Timo Sirainen [Thu, 14 Oct 2021 22:11:06 +0000 (00:11 +0200)]
imap-login: proxy: Fix STARTTLS failure message
The error message blindly skipped over 3 bytes after the tagged "S " reply.
This was okay if the reply was "NO", but wrong if the reply was "BAD". Also
nothing really guarantees that a broken server couldn't have just returned
a truncated "S " string, in which case the error would point to garbage.
Timo Sirainen [Thu, 14 Oct 2021 21:48:41 +0000 (23:48 +0200)]
auth: crypt_verify_blowfish() - Check $2 prefix without str_begins()
Although str_begins() works as well, it's a bit inconsistent looking here.
Timo Sirainen [Thu, 14 Oct 2021 20:17:09 +0000 (23:17 +0300)]
lib-storage: Don't include "hdr." prefix in invalid header name error message
The error message makes more sense without the "hdr." prefix, since it's
not part of the header name.
Timo Sirainen [Thu, 14 Oct 2021 22:18:40 +0000 (00:18 +0200)]
lib-master: Break out of FAIL reply parsing loop once reason is found
Timo Sirainen [Thu, 14 Oct 2021 22:21:30 +0000 (00:21 +0200)]
lib: Fix memory pool names with DEBUG_SILENT=1
When compiling with --enable-devel-checks and running with DEBUG_SILENT=1,
the memory pool names were skipping over the first 8 bytes in the name.
This was supposed to be done only if the name begins with MEMPOOL_GROWING.
Marco Bettini [Fri, 11 Mar 2022 10:44:24 +0000 (10:44 +0000)]
global: Fix stray whitespaces
Marco Bettini [Tue, 15 Mar 2022 09:45:23 +0000 (09:45 +0000)]
lib-ssl-iostream: protocol_versions[] - Reformat table
Marco Bettini [Tue, 15 Mar 2022 09:43:05 +0000 (09:43 +0000)]
lib-ssl-iostream: protocol_versions[] - Replace conditional table chunks with macro values
Marco Bettini [Tue, 15 Mar 2022 09:37:59 +0000 (09:37 +0000)]
lib-ssl-iostream: protocol_versions[] - Drops support for ssl_min_protocol=SSLv3
Marco Bettini [Wed, 16 Mar 2022 10:53:25 +0000 (10:53 +0000)]
lib-master: master_service_ssl_settings_check(): Raise warning when ssl_min_protocol contains ANY
Marco Bettini [Tue, 15 Mar 2022 15:02:56 +0000 (15:02 +0000)]
lib-ssl-iostream: ssl_ctx_use_certificate_chain() - Remove stray whitespaces
Timo Sirainen [Mon, 21 Mar 2022 09:03:03 +0000 (11:03 +0200)]
dsync: Properly terminate escape_chars when escaping mailbox names
Broken by
596c5a52e7e554571285e90063712cb0d37b34eb
Aki Tuomi [Fri, 18 Mar 2022 07:41:37 +0000 (09:41 +0200)]
lib-test: test-subprocess - Free subprocess before forking
Otherwise it'll leak memory.
Broken in
34bdfdcbc7e3b374a219732329b6ce6d84a7666e
Timo Sirainen [Mon, 28 Feb 2022 11:11:35 +0000 (06:11 -0500)]
global: Remove unused macros
Marco Bettini [Wed, 9 Mar 2022 08:56:28 +0000 (09:56 +0100)]
var-expand-crypt: var_expand_crypt_settings() - Use macro VAR_EXPAND_CRYPT_DEFAULT_ALGO
Marco Bettini [Wed, 9 Mar 2022 09:14:44 +0000 (10:14 +0100)]
mail-crypt: Replace DCRYPT_FORMAT_DOVECOT with MAIL_CRYPT_KEY_ATTRIBUTE_FORMAT
Marco Bettini [Wed, 9 Mar 2022 09:05:52 +0000 (09:05 +0000)]
auth: Use macro DB_LUA_CACHE_KEY
Timo Sirainen [Mon, 28 Feb 2022 11:53:05 +0000 (06:53 -0500)]
lib: Use GRBUF_MIN_SIZE for groups instead of PWBUF_MIN_SIZE
They both have the same value, so it didn't break anything.
Marco Bettini [Wed, 9 Mar 2022 09:14:10 +0000 (10:14 +0100)]
mail-crypt: Remove stray spaces in mail-crypt-key.c
Timo Sirainen [Wed, 2 Mar 2022 14:39:30 +0000 (09:39 -0500)]
dsync: Fix hierarchical mailbox name parts individually
For example with filesystem-based mailbox formats it's not allowed to create
"box/../child" mailbox. With previous code dsync just gave up and created
the mailbox name based on its GUID. This is now improved to instead try to
insert '_' character after each hierarchy separator so the newly fixed
mailbox name is "box/_../child".
Timo Sirainen [Tue, 1 Mar 2022 13:37:57 +0000 (08:37 -0500)]
dsync: Escape and unescape mailbox names as needed
This should fix various issues with syncing local and remote mailbox names.
It especially avoids changing the escape character to alt_char.
Timo Sirainen [Tue, 1 Mar 2022 16:51:04 +0000 (11:51 -0500)]
dsync: Track whether escape character was added just for dsync
Will be used by the following commit