]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
4 months agoglobal: Add pyproject.toml for Python scripts
Fred Morcos [Thu, 27 Mar 2025 15:51:07 +0000 (16:51 +0100)] 
global: Add pyproject.toml for Python scripts

4 months agoglobal: gitignore: Ignore python rope cache dir
Fred Morcos [Wed, 9 Apr 2025 06:30:20 +0000 (08:30 +0200)] 
global: gitignore: Ignore python rope cache dir

4 months agoconfig: Fail if quoted "\escaping" is used for unexpected characters
Timo Sirainen [Mon, 31 Mar 2025 11:47:55 +0000 (14:47 +0300)] 
config: Fail if quoted "\escaping" is used for unexpected characters

4 months agoconfig: Unescape a "quoted" setting key
Timo Sirainen [Fri, 28 Mar 2025 21:20:07 +0000 (23:20 +0200)] 
config: Unescape a "quoted" setting key

This mainly fixes e.g.:

mailbox_special_use {
  "\Drafts" = yes
}

4 months agoconfig: Fix various issues in doveconf when outputing @groups
Timo Sirainen [Wed, 19 Mar 2025 16:16:43 +0000 (18:16 +0200)] 
config: Fix various issues in doveconf when outputing @groups

4 months agoconfig: Change @group includes to be merged into parsed config immediately
Timo Sirainen [Thu, 20 Mar 2025 10:57:53 +0000 (12:57 +0200)] 
config: Change @group includes to be merged into parsed config immediately

This change expands the group settings into the settings tree using a new
low-priority CONFIG_PARSER_CHANGE_GROUP change_counter. Settings with this
counter are included in all checks, but they are not exported as part of the
configuration (to allow overriding the entire groups in cli/userdb).

This fixes using for example:

@metric_defaults = backend
metric auth_failures {
  fields = foo
}

Which otherwise would fail with "metric is required to have metric_filter
setting" error, because it didn't realize the auth_metrics already existed.

4 months agoconfig: Preserve filter_required_setting_seen when merging filter trees
Timo Sirainen [Thu, 20 Mar 2025 10:55:37 +0000 (12:55 +0200)] 
config: Preserve filter_required_setting_seen when merging filter trees

4 months agoconfig: config_module_parsers_merge() - Add new_change_counter parameter
Timo Sirainen [Thu, 20 Mar 2025 10:51:35 +0000 (12:51 +0200)] 
config: config_module_parsers_merge() - Add new_change_counter parameter

This simplifies the following commits.

4 months agodoveadm kick: Add support for kicking multiple usernames
Timo Sirainen [Tue, 25 Mar 2025 10:11:26 +0000 (12:11 +0200)] 
doveadm kick: Add support for kicking multiple usernames

4 months agodoveadm: Add who_filter.username_wildcards helper boolean
Timo Sirainen [Tue, 25 Mar 2025 09:18:36 +0000 (11:18 +0200)] 
doveadm: Add who_filter.username_wildcards helper boolean

Simplifies the next commit.

4 months agodoveadm kick: Fix crash when trying to give multiple username parameters
Timo Sirainen [Tue, 25 Mar 2025 08:57:52 +0000 (10:57 +0200)] 
doveadm kick: Fix crash when trying to give multiple username parameters

4 months agodoveadm kick: Fix event/memory leak when failing to connect to anvil
Timo Sirainen [Tue, 25 Mar 2025 08:53:18 +0000 (10:53 +0200)] 
doveadm kick: Fix event/memory leak when failing to connect to anvil

4 months agolib-storage: mailbox_list_index_refresh_force() - Add missing error handling for...
Timo Sirainen [Fri, 21 Mar 2025 19:33:00 +0000 (21:33 +0200)] 
lib-storage: mailbox_list_index_refresh_force() - Add missing error handling for failed mail_index_refresh()

4 months agolib-storage: mailbox_list_index_refresh() - Fix error handling when called many times...
Timo Sirainen [Fri, 21 Mar 2025 19:30:12 +0000 (21:30 +0200)] 
lib-storage: mailbox_list_index_refresh() - Fix error handling when called many times rapidly

The error could have been cleared out between the calls, so set the repeated
calls as internal failure.

4 months agoimap: Fix potential assert-crash if pipelining IDLE+DONE+more commands
Timo Sirainen [Thu, 27 Mar 2025 10:23:30 +0000 (12:23 +0200)] 
imap: Fix potential assert-crash if pipelining IDLE+DONE+more commands

At least followed by COPY command it assert-crashes.
Fixes:
Panic: file cmd-copy.c: line 120 (fetch_and_copy): assertion failed: (o_stream_is_corked(client->output) || client->output->stream_errno != 0)

4 months agoglobal: Log errors if anvil query fails
Timo Sirainen [Fri, 21 Mar 2025 18:38:53 +0000 (20:38 +0200)] 
global: Log errors if anvil query fails

4 months agolib-master: Fix anvil_client_query() return value comment
Timo Sirainen [Fri, 21 Mar 2025 18:32:30 +0000 (20:32 +0200)] 
lib-master: Fix anvil_client_query() return value comment

It never returns NULL.

4 months agolib-master: Set proper error string to anvil_callback_t
Timo Sirainen [Fri, 21 Mar 2025 18:30:54 +0000 (20:30 +0200)] 
lib-master: Set proper error string to anvil_callback_t

4 months agolib-master: Add API changes to allow anvil_callback_t to return error string
Timo Sirainen [Fri, 21 Mar 2025 14:09:45 +0000 (16:09 +0200)] 
lib-master: Add API changes to allow anvil_callback_t to return error string

4 months agolib-settings: test-settings - Refactor initialization of params3
Aki Tuomi [Fri, 28 Mar 2025 06:08:53 +0000 (08:08 +0200)] 
lib-settings: test-settings - Refactor initialization of params3

Satisfies older compilers

4 months agolib-auth: Fix linking due to duplicate symbols
Timo Sirainen [Thu, 27 Mar 2025 15:41:20 +0000 (17:41 +0200)] 
lib-auth: Fix linking due to duplicate symbols

4 months agolmtp: Fix Pro edition to actually listen on port 24
Timo Sirainen [Thu, 27 Mar 2025 15:52:40 +0000 (17:52 +0200)] 
lmtp: Fix Pro edition to actually listen on port 24

Was forgotten in a9c8da0daf874e2502f60d91a808ead94fe97d35

4 months agolib-var-expand: Test hierarchical SETTINGS_EVENT_VAR_EXPAND_PARAMS
Timo Sirainen [Wed, 19 Mar 2025 08:11:27 +0000 (10:11 +0200)] 
lib-var-expand: Test hierarchical SETTINGS_EVENT_VAR_EXPAND_PARAMS

4 months agolib-settings: Pad initial var expand context with empty tables and providers when...
Aki Tuomi [Wed, 19 Mar 2025 08:48:43 +0000 (10:48 +0200)] 
lib-settings: Pad initial var expand context with empty tables and providers when needed

Fixes:
Panic: file settings.c: line 1560 (settings_var_expand_init_add): assertion failed: (I_MAX(num_tables, num_provs) == num_ctx)

4 months agoauth: db-oauth2 - Don't mix table and providers_arr
Aki Tuomi [Wed, 26 Mar 2025 10:00:49 +0000 (12:00 +0200)] 
auth: db-oauth2 - Don't mix table and providers_arr

It's not needed.

4 months agoquota: fs_quota_mountpoint_get() - Fix crash due to initialized event
Marco Bettini [Tue, 25 Mar 2025 10:18:56 +0000 (10:18 +0000)] 
quota: fs_quota_mountpoint_get() - Fix crash due to initialized event

4 months agoquota: imapc_quota_refresh_update() - Fix crash due to initialized event
Marco Bettini [Mon, 24 Mar 2025 12:58:47 +0000 (12:58 +0000)] 
quota: imapc_quota_refresh_update() - Fix crash due to initialized event

4 months agoconfig: doveconf - Fix asking for settings which have named filter as prefix
Timo Sirainen [Thu, 20 Mar 2025 12:01:52 +0000 (14:01 +0200)] 
config: doveconf - Fix asking for settings which have named filter as prefix

For example "doveconf imapc_master_user" wouldn't output the setting,
although "doveconf imapc/master_user" would.

4 months agoconfig: Fix file descriptor leak if "set = <file" handling fails due to fstat()
Timo Sirainen [Fri, 21 Mar 2025 11:41:52 +0000 (13:41 +0200)] 
config: Fix file descriptor leak if "set = <file" handling fails due to fstat()

Broken by 0301f03cbe9123302a439756f54a713373b86c69

4 months agoconfig: Improve "Unknown section name" error with more details
Timo Sirainen [Thu, 20 Mar 2025 09:29:57 +0000 (11:29 +0200)] 
config: Improve "Unknown section name" error with more details

4 months agolib-imap-client: Add IMAP4rev2 capability detection support
Markus Valentin [Tue, 18 Mar 2025 10:29:23 +0000 (11:29 +0100)] 
lib-imap-client: Add IMAP4rev2 capability detection support

4 months agoimap: Add imap4rev2 capability
Markus Valentin [Mon, 10 Mar 2025 14:29:27 +0000 (14:29 +0000)] 
imap: Add imap4rev2 capability

It can only be enabled if build with --enable-experimental-imap4rev2

4 months agoconfig: Support config version 2.4.1
Aki Tuomi [Wed, 19 Mar 2025 10:57:58 +0000 (12:57 +0200)] 
config: Support config version 2.4.1

5 months agolib-settings: Skip applying groups early if there are no group includes
Timo Sirainen [Wed, 19 Mar 2025 10:02:04 +0000 (12:02 +0200)] 
lib-settings: Skip applying groups early if there are no group includes

5 months agolib: test-file-cache - Ignore RLIMIT_AS enforcement failure
Aki Tuomi [Tue, 18 Mar 2025 08:31:37 +0000 (10:31 +0200)] 
lib: test-file-cache - Ignore RLIMIT_AS enforcement failure

If the OS does not respect RLIMIT_AS here, lets skip all the rest of
the tests.

This happens at least with qemu/aarch64.

5 months agolib-master: Try to use binary config cache if DOVECOT_CONFIG_CACHE environment is set
Timo Sirainen [Tue, 11 Mar 2025 07:44:24 +0000 (09:44 +0200)] 
lib-master: Try to use binary config cache if DOVECOT_CONFIG_CACHE environment is set

5 months agoconfig, lib-settings: Add support for binary config file cache
Timo Sirainen [Sun, 9 Mar 2025 09:09:07 +0000 (11:09 +0200)] 
config, lib-settings: Add support for binary config file cache

This is mainly intended for optimizing our CI performance. It shouldn't
be used in production.

5 months agolib-settings, global: settings_parse_read_file() - Return file's struct stat
Timo Sirainen [Tue, 11 Mar 2025 07:39:09 +0000 (09:39 +0200)] 
lib-settings, global: settings_parse_read_file() - Return file's struct stat

5 months agoauth: Fix using passdb_fields with passdb_ldap_bind_userdn=yes release-3.1.0
Timo Sirainen [Fri, 14 Mar 2025 08:40:23 +0000 (10:40 +0200)] 
auth: Fix using passdb_fields with passdb_ldap_bind_userdn=yes

5 months agoconfig: Improve "Unknown setting" error with more details and suggestions
Timo Sirainen [Wed, 12 Mar 2025 14:12:11 +0000 (16:12 +0200)] 
config: Improve "Unknown setting" error with more details and suggestions

List the autoprefixed setting names that were attempted. Also try to give
suggestions for corrected setting names with named list filters.

5 months agoconfig: Remove dead code trying to add section name prefix for unknown settings
Timo Sirainen [Wed, 12 Mar 2025 13:33:22 +0000 (15:33 +0200)] 
config: Remove dead code trying to add section name prefix for unknown settings

All settings are now global. There is no settings hierarchy.

5 months agolmtp: Clarify lmtp_user_concurrency_limit value of unlimited
Karl Fleischmann [Wed, 12 Mar 2025 08:59:18 +0000 (09:59 +0100)] 
lmtp: Clarify lmtp_user_concurrency_limit value of unlimited

Disallow setting this setting to 0. Make the relevant checks against
"unlimited" instead.

5 months agolmtp: Change the default lmtp_user_concurrency_limit to 10
Karl Fleischmann [Wed, 12 Mar 2025 08:59:09 +0000 (09:59 +0100)] 
lmtp: Change the default lmtp_user_concurrency_limit to 10

5 months agoglobal: Make process_shutdown_filter specific to imap/pop3/submission
Timo Sirainen [Wed, 12 Mar 2025 15:51:44 +0000 (17:51 +0200)] 
global: Make process_shutdown_filter specific to imap/pop3/submission

5 months agoimap: For Pro edition, change imap-master socket's owner to default_internal_user
Timo Sirainen [Tue, 11 Mar 2025 12:01:07 +0000 (14:01 +0200)] 
imap: For Pro edition, change imap-master socket's owner to default_internal_user

5 months agopop3: Use inbox mailbox_list's existing mail_storage_settings
Timo Sirainen [Sat, 8 Mar 2025 08:45:59 +0000 (10:45 +0200)] 
pop3: Use inbox mailbox_list's existing mail_storage_settings

5 months agolib-storage: Add mailbox_list_get_mail_set()
Timo Sirainen [Sat, 8 Mar 2025 08:43:52 +0000 (10:43 +0200)] 
lib-storage: Add mailbox_list_get_mail_set()

5 months agolib-storage: Remove unused mail_user._mail_set
Timo Sirainen [Sat, 8 Mar 2025 08:35:38 +0000 (10:35 +0200)] 
lib-storage: Remove unused mail_user._mail_set

This was implicitly doing mail_user_get_home() when expanding user settings,
which was expected by the shared storage code. Changed this call now to be
explicit.

5 months agolib-storage: Remove unused mail_user_set_get_storage_set()
Timo Sirainen [Sat, 8 Mar 2025 08:33:03 +0000 (10:33 +0200)] 
lib-storage: Remove unused mail_user_set_get_storage_set()

5 months agodoveadm auth: Replace mail_user_set_get_storage_set() with direct settings lookup
Timo Sirainen [Sat, 8 Mar 2025 08:32:05 +0000 (10:32 +0200)] 
doveadm auth: Replace mail_user_set_get_storage_set() with direct settings lookup

5 months agolib-storage: Default namespace init: Lookup mail_driver with a settings lookup
Timo Sirainen [Sat, 8 Mar 2025 08:22:46 +0000 (10:22 +0200)] 
lib-storage: Default namespace init: Lookup mail_driver with a settings lookup

This allows removal of mail_user_set_get_storage_set()

5 months agolib-storage: mail_duplicate_db_init() - Lookup settings via inbox mailbox_list
Timo Sirainen [Sat, 8 Mar 2025 08:19:25 +0000 (10:19 +0200)] 
lib-storage: mail_duplicate_db_init() - Lookup settings via inbox mailbox_list

It's already used for looking up volatile directory, so use it for the rest
as well.

5 months agoimap: Move mailbox_list_index setting to be looked up via imap_settings
Timo Sirainen [Sat, 8 Mar 2025 08:17:33 +0000 (10:17 +0200)] 
imap: Move mailbox_list_index setting to be looked up via imap_settings

5 months agolib-storage: Move namespace setting to mail_user_settings
Timo Sirainen [Sat, 8 Mar 2025 08:14:11 +0000 (10:14 +0200)] 
lib-storage: Move namespace setting to mail_user_settings

5 months agolib-storage: mail_user_lock_file_create() - Use mail_set from mailbox_list
Timo Sirainen [Sat, 8 Mar 2025 08:07:58 +0000 (10:07 +0200)] 
lib-storage: mail_user_lock_file_create() - Use mail_set from mailbox_list

It was partially being used, while other settings were from user's mail_set.

5 months agolib-storage: Try to get special_use flags using cached mailbox settings
Timo Sirainen [Fri, 7 Mar 2025 10:56:55 +0000 (12:56 +0200)] 
lib-storage: Try to get special_use flags using cached mailbox settings

5 months agolib-storage: mailbox_list_iter_next() - Fix memory allocation for special_use flags
Timo Sirainen [Tue, 11 Mar 2025 09:50:54 +0000 (11:50 +0200)] 
lib-storage: mailbox_list_iter_next() - Fix memory allocation for special_use flags

It's not safe to store the string into data stack.

5 months agolib-storage: Try to use cached mailbox settings
Timo Sirainen [Fri, 7 Mar 2025 10:27:06 +0000 (12:27 +0200)] 
lib-storage: Try to use cached mailbox settings

5 months agolib-storage: Move mailbox_get_name_without_prefix()
Timo Sirainen [Fri, 7 Mar 2025 10:26:39 +0000 (12:26 +0200)] 
lib-storage: Move mailbox_get_name_without_prefix()

5 months agolib-storage: Use parsed_mailboxes instead of getting mailbox settings again
Timo Sirainen [Thu, 6 Mar 2025 18:30:48 +0000 (20:30 +0200)] 
lib-storage: Use parsed_mailboxes instead of getting mailbox settings again

5 months agolib-storage: Save all mailbox settings in namespace settings
Timo Sirainen [Thu, 6 Mar 2025 18:27:57 +0000 (20:27 +0200)] 
lib-storage: Save all mailbox settings in namespace settings

This avoids having to look them up again.

5 months agolmtp: Add and use lmtp_pre_mail_settings
Timo Sirainen [Thu, 6 Mar 2025 18:08:16 +0000 (20:08 +0200)] 
lmtp: Add and use lmtp_pre_mail_settings

It only has mail_max_lock_timeout setting. This is much efficient to lookup
than the full large mail_storage_settings.

5 months agolib-storage: Add and use mailbox_list_layout_settings
Timo Sirainen [Thu, 6 Mar 2025 17:51:08 +0000 (19:51 +0200)] 
lib-storage: Add and use mailbox_list_layout_settings

It only has mailbox_list_layout setting. This is much efficient to lookup
than the full large mail_storage_settings.

5 months agolib-storage: Add and use mail_driver_settings
Timo Sirainen [Thu, 6 Mar 2025 17:47:39 +0000 (19:47 +0200)] 
lib-storage: Add and use mail_driver_settings

It only has mail_driver setting. This is much efficient to lookup than
the full large mail_storage_settings.

5 months agolib-storage: Remove mail_user.have_special_use_mailboxes
Timo Sirainen [Thu, 6 Mar 2025 12:30:58 +0000 (14:30 +0200)] 
lib-storage: Remove mail_user.have_special_use_mailboxes

This avoids having to go through all mailbox settings in all namespaces when
initializing user.

5 months agoimap: Unconditionally advertise SPECIAL-USE capability
Timo Sirainen [Thu, 6 Mar 2025 12:26:49 +0000 (14:26 +0200)] 
imap: Unconditionally advertise SPECIAL-USE capability

Clients should be able to handle a LIST reply doesn't return any special-use
flags, even if the capability is returned.

The removal is mainly to avoid rather costly checks with the new
configuration code.

5 months agoconfig: Add @mailbox_defaults = english
Timo Sirainen [Tue, 11 Mar 2025 10:31:18 +0000 (12:31 +0200)] 
config: Add @mailbox_defaults = english

5 months agoconfig: Rename stats-metrics-defaults.h to default-settings-import.h
Timo Sirainen [Tue, 11 Mar 2025 10:34:45 +0000 (12:34 +0200)] 
config: Rename stats-metrics-defaults.h to default-settings-import.h

5 months agoimap-hibernate: Send logout statistics when unhibernating
Karl Fleischmann [Fri, 7 Mar 2025 09:05:21 +0000 (10:05 +0100)] 
imap-hibernate: Send logout statistics when unhibernating

5 months agolib-imap, imap: Load and restore logout statistics when creating a client
Karl Fleischmann [Fri, 7 Mar 2025 09:02:22 +0000 (10:02 +0100)] 
lib-imap, imap: Load and restore logout statistics when creating a client

5 months agolib-imap, imap: Move imap_logout_format statistics into separate struct
Karl Fleischmann [Thu, 6 Mar 2025 13:48:18 +0000 (14:48 +0100)] 
lib-imap, imap: Move imap_logout_format statistics into separate struct

5 months agoimap: cmd_store() - Fix indentation
Karl Fleischmann [Thu, 6 Mar 2025 13:42:59 +0000 (14:42 +0100)] 
imap: cmd_store() - Fix indentation

5 months agoconfig: Change shared config fd to be read-only
Timo Sirainen [Sat, 8 Mar 2025 07:16:05 +0000 (09:16 +0200)] 
config: Change shared config fd to be read-only

5 months agolib-settings: Fix compiling in build directory
Timo Sirainen [Mon, 10 Mar 2025 18:57:23 +0000 (20:57 +0200)] 
lib-settings: Fix compiling in build directory

Broken by 404d78b0754f5983015a1b0b189e3f1acec84a37

5 months agoauth: Remove old var expand syntax from test-lua
Aki Tuomi [Tue, 11 Mar 2025 07:32:30 +0000 (09:32 +0200)] 
auth: Remove old var expand syntax from test-lua

5 months agolib-auth: Move password scheme code back to lib-auth
Aki Tuomi [Tue, 11 Mar 2025 07:23:20 +0000 (09:23 +0200)] 
lib-auth: Move password scheme code back to lib-auth

Keep all code that require some dependency in libauth-crypt.

Removes sodium and crypt support from password schemes unless
explicitly enabled.

5 months agoauth, doveadm: Use password_schemes_register_all() to get all schemes
Aki Tuomi [Tue, 11 Mar 2025 07:25:03 +0000 (09:25 +0200)] 
auth, doveadm: Use password_schemes_register_all() to get all schemes
again

5 months agolib-auth: Add password_schemes_register_all()
Aki Tuomi [Tue, 11 Mar 2025 11:43:17 +0000 (13:43 +0200)] 
lib-auth: Add password_schemes_register_all()

5 months agolib-auth: Move crypt_verify() password-scheme-crypt.c internal function
Aki Tuomi [Tue, 11 Mar 2025 11:29:15 +0000 (13:29 +0200)] 
lib-auth: Move crypt_verify() password-scheme-crypt.c internal function

5 months agolib-auth: Add password_schemes_weak_allowed()
Aki Tuomi [Tue, 11 Mar 2025 11:31:57 +0000 (13:31 +0200)] 
lib-auth: Add password_schemes_weak_allowed()

Needed by next commit

5 months agoconfig: Add config_parsed_get_setting_change_counter()
Timo Sirainen [Mon, 10 Mar 2025 17:04:02 +0000 (19:04 +0200)] 
config: Add config_parsed_get_setting_change_counter()

5 months agodoveconf: Fix boollist output when using -h parameter
Timo Sirainen [Mon, 10 Mar 2025 16:47:51 +0000 (18:47 +0200)] 
doveconf: Fix boollist output when using -h parameter

Forgotten in 61e3708fb56a10e3020d6a4f155ad32167833488

5 months agoconfig: Move hook_config_parser_end() later and add event and config_parsed parameters
Timo Sirainen [Mon, 10 Mar 2025 12:50:28 +0000 (14:50 +0200)] 
config: Move hook_config_parser_end() later and add event and config_parsed parameters

5 months agolib-sql: driver_cassandra_log_result - Differentiate warn_timeout message
Karl Fleischmann [Thu, 6 Mar 2025 09:18:42 +0000 (10:18 +0100)] 
lib-sql: driver_cassandra_log_result - Differentiate warn_timeout message

5 months agoconfig: doveconf - Output replacement boolean lists in a single line
Timo Sirainen [Mon, 3 Mar 2025 13:56:48 +0000 (15:56 +0200)] 
config: doveconf - Output replacement boolean lists in a single line

5 months agoconfig: Add CONFIG_KEY_ESCAPE_CHARS macro
Timo Sirainen [Thu, 6 Mar 2025 12:19:45 +0000 (14:19 +0200)] 
config: Add CONFIG_KEY_ESCAPE_CHARS macro

5 months agoglobal: Add plugin_dependency for settings coming from plugins
Timo Sirainen [Mon, 3 Mar 2025 12:52:12 +0000 (14:52 +0200)] 
global: Add plugin_dependency for settings coming from plugins

5 months agolib-settings, config: Add setting_parser_info.plugin_dependency
Timo Sirainen [Mon, 3 Mar 2025 12:30:46 +0000 (14:30 +0200)] 
lib-settings, config: Add setting_parser_info.plugin_dependency

If set, the referred plugin must actually exist on filesystem before its
settings are used. This allows spltting core plugins to separate packages
so that the settings are hidden unless the packages are installed.

5 months agolib-auth: Don't link libauth.la to libauth-crypt.la
Timo Sirainen [Fri, 7 Mar 2025 09:22:14 +0000 (11:22 +0200)] 
lib-auth: Don't link libauth.la to libauth-crypt.la

This causes duplicate linking, because libauth.la is already in
libdovecot.so.

Broken by 24d967dfe76818821050f2da531ae1404238cbdf

5 months agolib-http: Fix increasing memory usage in shared HTTP client context
Timo Sirainen [Fri, 7 Mar 2025 11:14:49 +0000 (13:14 +0200)] 
lib-http: Fix increasing memory usage in shared HTTP client context

Broken by 191da0e9f93362fbf1ba8af2461c7df984eb375b

5 months agom4/dovecot.m4: Fix accidentally renamed LIBDOVECOT_FTS_INCLUDE
Timo Sirainen [Fri, 7 Mar 2025 10:35:44 +0000 (12:35 +0200)] 
m4/dovecot.m4: Fix accidentally renamed LIBDOVECOT_FTS_INCLUDE

Broken by 19316ac1ff80cb454f2d35614137292d9aa79e1e

5 months agolib-http: http-server-connnection - Make http_server_connection_close() NULL no-op
Aki Tuomi [Sat, 1 Mar 2025 11:20:13 +0000 (13:20 +0200)] 
lib-http: http-server-connnection - Make http_server_connection_close() NULL no-op

5 months agolib-http: http-client - Free settings with client pool
Aki Tuomi [Sat, 1 Mar 2025 11:20:27 +0000 (13:20 +0200)] 
lib-http: http-client - Free settings with client pool

5 months agolib-http: http-server - Restructure http_server_shut_down() to use while statement
Stephan Bosch [Fri, 21 Aug 2020 19:28:47 +0000 (21:28 +0200)] 
lib-http: http-server - Restructure http_server_shut_down() to use while statement

Original for statement was objectionable to static analyzer. New structure is
equivalent to similar code elsewhere in Dovecot.

5 months agolib-http: http-client-request - Fix NULL pointer dereference in http_client_request_c...
Stephan Bosch [Wed, 22 Apr 2020 18:42:26 +0000 (20:42 +0200)] 
lib-http: http-client-request - Fix NULL pointer dereference in http_client_request_continue_payload()

Problem found by Coverity.

5 months agolib-http: test-http-payload - Switch ioloop implicitly using callback
Stephan Bosch [Fri, 21 May 2021 11:16:54 +0000 (13:16 +0200)] 
lib-http: test-http-payload - Switch ioloop implicitly using callback

5 months agolib-http: http-client-request - Allow calling http_client_request_error() on aborted...
Stephan Bosch [Fri, 21 May 2021 11:00:15 +0000 (13:00 +0200)] 
lib-http: http-client-request - Allow calling http_client_request_error() on aborted request

5 months agolib-http: http-client-request - Fix pipeline corruption occurring after 100 Continue...
Stephan Bosch [Thu, 20 May 2021 01:04:35 +0000 (03:04 +0200)] 
lib-http: http-client-request - Fix pipeline corruption occurring after 100 Continue response

Only unlock connection output when no more requests are pending. Before, the
next request header could be sent while outgoing payload for current request was
still pending.

5 months agolib-http: http-client-connection - Move response pre-checks to http-client-request.c
Stephan Bosch [Thu, 20 May 2021 22:15:26 +0000 (00:15 +0200)] 
lib-http: http-client-connection - Move response pre-checks to http-client-request.c

5 months agolib-http: http-client-connection - Move handling of 100 response to http-client-request
Stephan Bosch [Thu, 20 May 2021 21:54:24 +0000 (23:54 +0200)] 
lib-http: http-client-connection - Move handling of 100 response to http-client-request