]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
14 months agolib: ostream-multiplex - Use ostream_private.corked instead of duplicating it
Timo Sirainen [Thu, 25 Apr 2024 21:22:32 +0000 (00:22 +0300)] 
lib: ostream-multiplex - Use ostream_private.corked instead of duplicating it

This also fixes o_stream_is_corked() to work correctly.

14 months agolib: ostream-multiplex - Split off o_stream_multiplex_send_packet()
Timo Sirainen [Tue, 2 Apr 2024 11:17:42 +0000 (14:17 +0300)] 
lib: ostream-multiplex - Split off o_stream_multiplex_send_packet()

14 months agolib: ostream-multiplex - Make sure parent stream write errors are noticed early
Timo Sirainen [Tue, 2 Apr 2024 11:07:43 +0000 (14:07 +0300)] 
lib: ostream-multiplex - Make sure parent stream write errors are noticed early

14 months agolib: ostream-multiplex - Fix propagating parent stream error messages
Timo Sirainen [Tue, 2 Apr 2024 11:05:38 +0000 (14:05 +0300)] 
lib: ostream-multiplex - Fix propagating parent stream error messages

14 months agolib, global: o_stream_create_multiplex() - Add format parameter
Timo Sirainen [Tue, 2 Apr 2024 10:52:33 +0000 (13:52 +0300)] 
lib, global: o_stream_create_multiplex() - Add format parameter

14 months agolib: ostream-multiplex - Remove unused multiplex_ostream.remain
Timo Sirainen [Tue, 2 Apr 2024 10:51:12 +0000 (13:51 +0300)] 
lib: ostream-multiplex - Remove unused multiplex_ostream.remain

14 months agolib: ostream-multiplex - Remove unnecessary check
Timo Sirainen [Tue, 2 Apr 2024 11:10:00 +0000 (14:10 +0300)] 
lib: ostream-multiplex - Remove unnecessary check

It's already checked above to be >0.

14 months agolib: istream-multiplex - Split off i_stream_multiplex_add()
Timo Sirainen [Tue, 2 Apr 2024 09:53:38 +0000 (12:53 +0300)] 
lib: istream-multiplex - Split off i_stream_multiplex_add()

14 months agolib: istream-multiplex - Allow destroying stream without closing it
Timo Sirainen [Tue, 30 Apr 2024 11:17:09 +0000 (14:17 +0300)] 
lib: istream-multiplex - Allow destroying stream without closing it

14 months agolib: istream-multiplex - Fix propagating parent stream error messages
Timo Sirainen [Tue, 2 Apr 2024 08:51:14 +0000 (11:51 +0300)] 
lib: istream-multiplex - Fix propagating parent stream error messages

14 months agolib: istream-multiplex - Rename struct multiplex_istream.remain to packet_bytes_left
Timo Sirainen [Tue, 2 Apr 2024 08:20:57 +0000 (11:20 +0300)] 
lib: istream-multiplex - Rename struct multiplex_istream.remain to packet_bytes_left

14 months agolib: istream-multiplex - Rename struct multiplex_ichannel.pending_pos to pending_count
Timo Sirainen [Tue, 2 Apr 2024 08:18:50 +0000 (11:18 +0300)] 
lib: istream-multiplex - Rename struct multiplex_ichannel.pending_pos to pending_count

14 months agolib: iostream-pump - Call o_stream_finish() when input is finished
Timo Sirainen [Wed, 5 Jun 2024 11:06:57 +0000 (14:06 +0300)] 
lib: iostream-pump - Call o_stream_finish() when input is finished

This is required to cleanly finish ostreams that have "end of stream"
marker.

14 months agoREADME.md: Remove dead link to doc/documentation.txt
Martti Rannanjärvi [Wed, 12 Jun 2024 23:51:41 +0000 (02:51 +0300)] 
README.md: Remove dead link to doc/documentation.txt

14 months agolib-dns: Fix potential timeout leak
Timo Sirainen [Wed, 12 Jun 2024 12:06:38 +0000 (15:06 +0300)] 
lib-dns: Fix potential timeout leak

14 months agoREADME.md: Fix link to mailing lists
Martti Rannanjärvi [Sun, 9 Jun 2024 00:32:39 +0000 (03:32 +0300)] 
README.md: Fix link to mailing lists

14 months agolib: istream-seekable - Allow in-memory fallback only for up to 10 MB streams
Timo Sirainen [Mon, 3 Jun 2024 20:42:25 +0000 (23:42 +0300)] 
lib: istream-seekable - Allow in-memory fallback only for up to 10 MB streams

14 months agolib: istream-seekable - Improve logging after write() errors
Timo Sirainen [Mon, 3 Jun 2024 20:28:23 +0000 (23:28 +0300)] 
lib: istream-seekable - Improve logging after write() errors

Also don't silently handle out of disk space errors - log a warning instead.

14 months agolib: istream-seekable - Assert that write() won't return 0
Timo Sirainen [Mon, 3 Jun 2024 20:23:40 +0000 (23:23 +0300)] 
lib: istream-seekable - Assert that write() won't return 0

14 months agolib: istream-seekable - Fix moving stream to memory on write() failure
Timo Sirainen [Mon, 3 Jun 2024 20:05:22 +0000 (23:05 +0300)] 
lib: istream-seekable - Fix moving stream to memory on write() failure

Fixes:
Panic: file istream-seekable.c: line 238 (read_from_buffer): assertion failed: (*ret_r > 0)

14 months agodoveadm save: Fix potential assert-crash if saving failed
Timo Sirainen [Mon, 3 Jun 2024 19:46:51 +0000 (22:46 +0300)] 
doveadm save: Fix potential assert-crash if saving failed

The input stream may not have been fully read at failure time.

Fixes:
Panic: file doveadm-mail-save.c: line 91 (cmd_save_to_mailbox): assertion failed: (input->eof)

14 months agoimap: Remove unused includes from imap-settings.c
Aki Tuomi [Mon, 13 May 2024 06:39:18 +0000 (09:39 +0300)] 
imap: Remove unused includes from imap-settings.c

14 months agoimap: Enable imap hibernation in Dovecot Pro build
Aki Tuomi [Tue, 7 May 2024 05:53:04 +0000 (08:53 +0300)] 
imap: Enable imap hibernation in Dovecot Pro build

14 months agom4: Define DOVECOT_PRO_EDITION if pro build is enabled
Aki Tuomi [Tue, 4 Jun 2024 08:37:04 +0000 (11:37 +0300)] 
m4: Define DOVECOT_PRO_EDITION if pro build is enabled

14 months agolib-dns: Fix dns_lookup_abort(&NULL) to not crash
Timo Sirainen [Tue, 4 Jun 2024 08:16:01 +0000 (11:16 +0300)] 
lib-dns: Fix dns_lookup_abort(&NULL) to not crash

Broken by f9e7f71e48dd4fe2b9af23796022fc256db3866d

14 months agodict: Check that dict client provides username when using private dict keys
Timo Sirainen [Mon, 3 Jun 2024 22:04:12 +0000 (01:04 +0300)] 
dict: Check that dict client provides username when using private dict keys

Prevents assert-crashes later on.

14 months agoconfig: Fix potential crash when parsing invalid values for settings
Timo Sirainen [Mon, 3 Jun 2024 21:51:49 +0000 (00:51 +0300)] 
config: Fix potential crash when parsing invalid values for settings

14 months agoconfig: Add assert to avoid scan-build warning
Timo Sirainen [Mon, 3 Jun 2024 21:51:39 +0000 (00:51 +0300)] 
config: Add assert to avoid scan-build warning

14 months agoanvil: test-connect-limit - Add asserts to avoid scan-build warnings
Timo Sirainen [Mon, 3 Jun 2024 21:46:29 +0000 (00:46 +0300)] 
anvil: test-connect-limit - Add asserts to avoid scan-build warnings

14 months agolib-dns: Fix clearing dns requests list at disconnect
Timo Sirainen [Fri, 31 May 2024 12:16:52 +0000 (15:16 +0300)] 
lib-dns: Fix clearing dns requests list at disconnect

14 months agolib-dns: Move cache entry refreshing out of dns-client-cache
Timo Sirainen [Wed, 29 May 2024 06:23:31 +0000 (09:23 +0300)] 
lib-dns: Move cache entry refreshing out of dns-client-cache

14 months agolib-dns: Fix error handling if background dns refresh lookup fails
Timo Sirainen [Wed, 29 May 2024 06:07:33 +0000 (09:07 +0300)] 
lib-dns: Fix error handling if background dns refresh lookup fails

If we got disconnected from dns-client, the background dns refresh callback
was never called.

14 months agolib-dns: Fix error handling when disconnection aborts requests
Timo Sirainen [Wed, 29 May 2024 06:00:20 +0000 (09:00 +0300)] 
lib-dns: Fix error handling when disconnection aborts requests

14 months agolib-dns: Abort pending requests when disconnecting, even when not connected
Timo Sirainen [Wed, 29 May 2024 05:58:49 +0000 (08:58 +0300)] 
lib-dns: Abort pending requests when disconnecting, even when not connected

14 months agolib-dns: Remove lookup from linked list independently of freeing it
Timo Sirainen [Tue, 28 May 2024 23:05:44 +0000 (02:05 +0300)] 
lib-dns: Remove lookup from linked list independently of freeing it

This probably doesn't fix anything, but makes it clearer how it's intended
to work.

14 months agolib-dns: Disconnect from server on lookup timeout
Timo Sirainen [Tue, 28 May 2024 23:11:51 +0000 (02:11 +0300)] 
lib-dns: Disconnect from server on lookup timeout

Since the timeout removed the lookup from the responses linked list, any
following replies could become matched against a wrong lookup.

14 months agolib-dns: dns_lookup_abort() - If client isn't destroyed, delay freeing the lookup
Timo Sirainen [Tue, 28 May 2024 23:03:35 +0000 (02:03 +0300)] 
lib-dns: dns_lookup_abort() - If client isn't destroyed, delay freeing the lookup

The lookup can't be removed from the linked list until its response has been
received, or the response could become matched against a wrong lookup.

14 months agolib-dns: Cleanup code by removing impossible code path
Timo Sirainen [Tue, 28 May 2024 22:57:00 +0000 (01:57 +0300)] 
lib-dns: Cleanup code by removing impossible code path

14 months agolib-dns: Move dns client cache to its own file
Timo Sirainen [Tue, 28 May 2024 22:33:55 +0000 (01:33 +0300)] 
lib-dns: Move dns client cache to its own file

14 months agolib-dns: Avoid dereferencing struct dns_lookup in dns_client_cache_*()
Timo Sirainen [Tue, 28 May 2024 22:30:17 +0000 (01:30 +0300)] 
lib-dns: Avoid dereferencing struct dns_lookup in dns_client_cache_*()

14 months agolib-dns: Extract caching fields from struct dns_client to dns_client_cache
Timo Sirainen [Tue, 28 May 2024 22:22:37 +0000 (01:22 +0300)] 
lib-dns: Extract caching fields from struct dns_client to dns_client_cache

14 months agolib-dns: Remove unnecessary includes and a define
Timo Sirainen [Tue, 28 May 2024 22:37:14 +0000 (01:37 +0300)] 
lib-dns: Remove unnecessary includes and a define

14 months agoconfigure: Drop unused DOVECOT_IPV6
Aki Tuomi [Thu, 23 May 2024 09:05:29 +0000 (12:05 +0300)] 
configure: Drop unused DOVECOT_IPV6

14 months agoauth: Ensure internal failures are failed when doing proxying
Aki Tuomi [Thu, 23 May 2024 07:48:52 +0000 (10:48 +0300)] 
auth: Ensure internal failures are failed when doing proxying

Otherwise the user will drop into a local session, which is not
what should happen.

14 months agoauth: Drop hostip field in auth_fields_remove()
Aki Tuomi [Thu, 23 May 2024 07:30:07 +0000 (10:30 +0300)] 
auth: Drop hostip field in auth_fields_remove()

Forgotten in 8be0af2dd41283fdd250b9a0d8fad28bfe80ca85

14 months agoauth: Check that host and hostip match if they are both IP addresses
Aki Tuomi [Thu, 23 May 2024 07:29:40 +0000 (10:29 +0300)] 
auth: Check that host and hostip match if they are both IP addresses

14 months agologin-common: Use temporary failure in client_auth_reply_args
Aki Tuomi [Tue, 28 May 2024 11:14:14 +0000 (14:14 +0300)] 
login-common: Use temporary failure in client_auth_reply_args

If we cannot parse the arguments, it must be TEMPFAIL, not AUTHFAILED.
Otherwise we get a stuck login process.

Broken in 49b5e7c44f034b1c4341409ffef205042bd46b56

14 months agologin-common: proxy - Check reply IP address family
Aki Tuomi [Thu, 23 May 2024 09:03:32 +0000 (12:03 +0300)] 
login-common: proxy - Check reply IP address family

14 months agologin-common: Check that host and hostip match if they are both IP addresses
Aki Tuomi [Thu, 23 May 2024 07:51:24 +0000 (10:51 +0300)] 
login-common: Check that host and hostip match if they are both IP addresses

14 months agologin-common: Choose next source address with correct address family
Aki Tuomi [Wed, 22 May 2024 12:11:12 +0000 (15:11 +0300)] 
login-common: Choose next source address with correct address family

When login_source_ips contains both IPv4 and IPv6 addresses,
outgoing connections attempts to use them in respect of family
of destination IPs.

14 months agologin-common: Fix infinite proxy loop if hostip is used
Aki Tuomi [Wed, 22 May 2024 07:32:40 +0000 (10:32 +0300)] 
login-common: Fix infinite proxy loop if hostip is used

If host and hostip are set to different IP addresses, loop detection
fails to detect this as loop.

14 months agologin-common: Remove duplicate logging of remote host
Aki Tuomi [Wed, 22 May 2024 06:38:54 +0000 (09:38 +0300)] 
login-common: Remove duplicate logging of remote host

14 months agologin-common: Log how many seconds host has been down
Aki Tuomi [Wed, 22 May 2024 06:35:23 +0000 (09:35 +0300)] 
login-common: Log how many seconds host has been down

14 months agologin-common: Remove unused includes
Aki Tuomi [Mon, 20 May 2024 07:53:11 +0000 (10:53 +0300)] 
login-common: Remove unused includes

14 months agologin-common: Include hostname in log prefix
Aki Tuomi [Mon, 20 May 2024 07:50:34 +0000 (10:50 +0300)] 
login-common: Include hostname in log prefix

14 months agolib: Use sa_family_t in struct ip_addr
Aki Tuomi [Thu, 23 May 2024 07:10:18 +0000 (10:10 +0300)] 
lib: Use sa_family_t in struct ip_addr

14 months agoconfigure: Add --enable-pro-build option to configure
Vincent Kenbeek [Mon, 13 May 2024 12:11:50 +0000 (14:11 +0200)] 
configure: Add --enable-pro-build option to configure

14 months agom4: Separate .m4 file for dovecot pro defines
Vincent Kenbeek [Mon, 3 Jun 2024 07:46:27 +0000 (09:46 +0200)] 
m4: Separate .m4 file for dovecot pro defines

14 months agoimap: Force ID name value when running pro edition
Vincent Kenbeek [Thu, 16 May 2024 12:16:55 +0000 (14:16 +0200)] 
imap: Force ID name value when running pro edition

14 months agoimap: Use DOVECOT_NAME instead of PACKAGE_NAME for ID command
Vincent Kenbeek [Mon, 13 May 2024 12:09:51 +0000 (14:09 +0200)] 
imap: Use DOVECOT_NAME instead of PACKAGE_NAME for ID command

14 months agoconfig: Fix writing delayed errors for filters
Timo Sirainen [Mon, 18 Sep 2023 10:09:01 +0000 (13:09 +0300)] 
config: Fix writing delayed errors for filters

The index number was moved elsewhere, it shouldn't be here.

14 months agodoveadm: Add --no-userdb-lookup parameter
Timo Sirainen [Mon, 27 May 2024 10:10:22 +0000 (13:10 +0300)] 
doveadm: Add --no-userdb-lookup parameter

This is likely mainly useful with doveadm sync/backup.

14 months agomaster: Fix assert-crash after "Process .. is ignoring idle SIGINT" error
Timo Sirainen [Fri, 31 May 2024 20:19:53 +0000 (23:19 +0300)] 
master: Fix assert-crash after "Process .. is ignoring idle SIGINT" error

The timeout was called multiple times, which caused internal state to break.

Fixes:
Panic: file service-monitor.c: line 60 (service_kill_idle): assertion failed: (processes_to_kill <= service->process_avail)

15 months agoauth: Drop passdb/userdb dict
Aki Tuomi [Mon, 27 May 2024 13:02:24 +0000 (16:02 +0300)] 
auth: Drop passdb/userdb dict

Lua driver can be used instead.

15 months agolib: iostream-rawlog - Flush final buffered data when the stream doesn't end with LF
Timo Sirainen [Fri, 5 Aug 2022 12:29:30 +0000 (15:29 +0300)] 
lib: iostream-rawlog - Flush final buffered data when the stream doesn't end with LF

15 months agoauth: "Auth request was queued .. secs" log message should be warning, not error
Timo Sirainen [Fri, 24 May 2024 12:03:26 +0000 (15:03 +0300)] 
auth: "Auth request was queued .. secs" log message should be warning, not error

15 months agolib, global: timeval_diff_msecs() - Return long long
Timo Sirainen [Fri, 24 May 2024 13:02:40 +0000 (16:02 +0300)] 
lib, global: timeval_diff_msecs() - Return long long

This makes it less likely to hit accidental bugs due to comparing timestamps
with large differences.

15 months agomaster: Add assert to make sure the same process isn't destroyed twice
Timo Sirainen [Tue, 14 May 2024 20:17:23 +0000 (23:17 +0300)] 
master: Add assert to make sure the same process isn't destroyed twice

15 months agomaster: Add asserts to make sure service state is clean at deinit
Timo Sirainen [Thu, 28 Sep 2023 18:46:01 +0000 (21:46 +0300)] 
master: Add asserts to make sure service state is clean at deinit

15 months agomaster: Add asserts to make sure service's idling process count is never higher than...
Timo Sirainen [Thu, 28 Sep 2023 09:45:33 +0000 (12:45 +0300)] 
master: Add asserts to make sure service's idling process count is never higher than avail count

15 months agoanvil: test-connect-limit - Fix memory leak
Timo Sirainen [Tue, 14 May 2024 17:55:03 +0000 (20:55 +0300)] 
anvil: test-connect-limit - Fix memory leak

15 months agoanvil: Fix memory leak when unused alt username field was reused for another field
Timo Sirainen [Tue, 14 May 2024 17:53:54 +0000 (20:53 +0300)] 
anvil: Fix memory leak when unused alt username field was reused for another field

15 months agoimap-hibernate: Send alt usernames to anvil
Timo Sirainen [Fri, 10 May 2024 11:22:42 +0000 (14:22 +0300)] 
imap-hibernate: Send alt usernames to anvil

15 months agolib-storage: mail_user_get_alt_usernames() - Fix returning garbage
Timo Sirainen [Fri, 10 May 2024 10:53:40 +0000 (13:53 +0300)] 
lib-storage: mail_user_get_alt_usernames() - Fix returning garbage

The first call returned usable usernames in data stack. However, these
were permanently stored to struct mail_user and returned also in the
following calls. At that point the pointers contained some garbage data.

Broken by 3c97a221b9365e1300f08f6b789f8bae7ef23601

15 months agoanvil: test-connect-limit - Add randomness test
Timo Sirainen [Fri, 10 May 2024 10:52:13 +0000 (13:52 +0300)] 
anvil: test-connect-limit - Add randomness test

15 months agolib: i_stream_read() - Fix for runtime error: applying zero offset to null pointer
Marco Bettini [Tue, 7 May 2024 09:01:29 +0000 (09:01 +0000)] 
lib: i_stream_read() - Fix for runtime error: applying zero offset to null pointer

(found in clang under --enable-devel-checks)

15 months agolib-imap-client: imapc_command_abort() - Remove command from connection's arrays...
Marco Bettini [Tue, 7 May 2024 13:34:48 +0000 (13:34 +0000)] 
lib-imap-client: imapc_command_abort() - Remove command from connection's arrays before freeing it

Broken by db8a542f3d9

15 months agodoveadm: Remove unused function hardlink_replace
Vincent Kenbeek [Fri, 12 Apr 2024 08:22:48 +0000 (10:22 +0200)] 
doveadm: Remove unused function hardlink_replace

15 months agodoveadm: Remove unused function file_contents_equal
Vincent Kenbeek [Fri, 12 Apr 2024 08:20:21 +0000 (10:20 +0200)] 
doveadm: Remove unused function file_contents_equal

15 months agodoveadm: Remove all mentions of sis deduplicate
Vincent Kenbeek [Thu, 11 Apr 2024 14:04:25 +0000 (16:04 +0200)] 
doveadm: Remove all mentions of sis deduplicate

15 months agolib-index: mail-index-modseq - Remove unused in-memory datastructures
Karl Fleischmann [Wed, 24 Apr 2024 15:53:25 +0000 (17:53 +0200)] 
lib-index: mail-index-modseq - Remove unused in-memory datastructures

15 months agolib-index: mail-index-modseq - Remove unused mail index modseq-manipulation functions
Karl Fleischmann [Wed, 24 Apr 2024 15:53:04 +0000 (17:53 +0200)] 
lib-index: mail-index-modseq - Remove unused mail index modseq-manipulation functions

15 months agolib-index: mail-index-sync - Simplify modseq update function calls
Karl Fleischmann [Thu, 25 Apr 2024 15:25:24 +0000 (17:25 +0200)] 
lib-index: mail-index-sync - Simplify modseq update function calls

15 months agolib-index: mail_index_modseq_update_to_highest() - Prepare function to replace modseq...
Karl Fleischmann [Thu, 25 Apr 2024 15:19:05 +0000 (17:19 +0200)] 
lib-index: mail_index_modseq_update_to_highest() - Prepare function to replace modseq manipulation functions

With dropping the in-memory per-flag tracking of the modseqs the
manipulation functions will lose their benefit. This commit prepares a
switch to using mail_index_modseq_update_to_highest() in their stead.

15 months agolib-index: Remove noop function mail_index_modseq_expunge()
Karl Fleischmann [Wed, 24 Apr 2024 15:51:37 +0000 (17:51 +0200)] 
lib-index: Remove noop function mail_index_modseq_expunge()

15 months agolib-index: Remove noop function mail_index_modseq_sync_map_replaced()
Karl Fleischmann [Wed, 24 Apr 2024 15:48:18 +0000 (17:48 +0200)] 
lib-index: Remove noop function mail_index_modseq_sync_map_replaced()

15 months agolib-index: mail-index-modseq - Remove unused mail_index_modseq_lookup_* functions
Karl Fleischmann [Wed, 24 Apr 2024 15:46:26 +0000 (17:46 +0200)] 
lib-index: mail-index-modseq - Remove unused mail_index_modseq_lookup_* functions

15 months agolib-storage: search_arg_match_index() - Simplify mail index modseq lookup call
Karl Fleischmann [Wed, 24 Apr 2024 15:45:42 +0000 (17:45 +0200)] 
lib-storage: search_arg_match_index() - Simplify mail index modseq lookup call

15 months agolib-index: mail-index-modseq - Remove unused mail_index_map_modseq_free()
Karl Fleischmann [Wed, 24 Apr 2024 15:37:00 +0000 (17:37 +0200)] 
lib-index: mail-index-modseq - Remove unused mail_index_map_modseq_free()

15 months agolib-index: mail-index-modseq - Remove unused mail_index_map_modseq_clone()
Karl Fleischmann [Wed, 24 Apr 2024 15:36:17 +0000 (17:36 +0200)] 
lib-index: mail-index-modseq - Remove unused mail_index_map_modseq_clone()

15 months agolib-index: mail-index-map - Remove modseq map from index record map
Karl Fleischmann [Wed, 24 Apr 2024 15:35:44 +0000 (17:35 +0200)] 
lib-index: mail-index-map - Remove modseq map from index record map

15 months agolib-index: mail-index-modseq - Remove modseq map from sync context
Karl Fleischmann [Wed, 24 Apr 2024 15:20:50 +0000 (17:20 +0200)] 
lib-index: mail-index-modseq - Remove modseq map from sync context

15 months agolib-index: mail-index-modseq - Remove session-based modseq tracking flag
Karl Fleischmann [Wed, 24 Apr 2024 14:29:26 +0000 (16:29 +0200)] 
lib-index: mail-index-modseq - Remove session-based modseq tracking flag

15 months agolib-index: mail-index-modseq - Explicitly track whether modseqs have been enabled...
Karl Fleischmann [Wed, 24 Apr 2024 13:00:44 +0000 (15:00 +0200)] 
lib-index: mail-index-modseq - Explicitly track whether modseqs have been enabled in an index

15 months agolib-index: mail-index-modseq - Clarify whether modseq tracking was requested in session
Karl Fleischmann [Wed, 24 Apr 2024 12:48:15 +0000 (14:48 +0200)] 
lib-index: mail-index-modseq - Clarify whether modseq tracking was requested in session

16 months agolib-storage, global: Remove unnecessary MAILBOX_SYNC_FLAG_FULL_WRITE
Timo Sirainen [Mon, 24 Jul 2023 22:10:57 +0000 (01:10 +0300)] 
lib-storage, global: Remove unnecessary MAILBOX_SYNC_FLAG_FULL_WRITE

It was only set by IMAP CHECK and POP3 QUIT commands, which made no sense.
Also it only changed the behavior for mbox format.

16 months agofs-api: fs_iter_init_with_event() - Initialize iter->event also if iter_init is not...
Markus Valentin [Wed, 3 Apr 2024 10:53:08 +0000 (12:53 +0200)] 
fs-api: fs_iter_init_with_event() - Initialize iter->event also if iter_init is not implemented

16 months agofts: Adding setting for maximum message body size
Aki Tuomi [Tue, 9 Apr 2024 10:07:04 +0000 (13:07 +0300)] 
fts: Adding setting for maximum message body size

Solr maximum message size for indexing Set a limit fts_message_max_size
on message body size. Messages are capped at the maximum size for indexing.
This Defaults to zero which means no limit (the existing behaviour).
Example setting:

fts_message_max_size = 10M

Based on work by John Fawcett <john@voipsupport.it>

16 months agofts-solr: Limit fetches to SOLR_MAX_MULTI_ROWS
John Fawcett [Wed, 3 Jan 2024 13:48:43 +0000 (14:48 +0100)] 
fts-solr: Limit fetches to SOLR_MAX_MULTI_ROWS

Solr place upper bound on number of rows to be returned from solr for single
mailbox search When dovecot sends a search to solr it uses the rows parameter.
For multiple mailbox search the value used is SOLR_MAX_MULTI_ROWS , hardcoded to
100000. For single mailbox search the value used is uidnext. This patch
introduces an upper limit for single mailbox search using the same upper bound
as for multiple mailbox searches, SOLR_MAX_MULTI_ROWS, while leaving the
existing functionality of sending the uidnext value if it is smaller. This is
just to place a more reasonable upper bound since uidnext can get much larger
than 100000. The following url points to the Solr documentation for query
parameters that describes the rows parameter:
https://solr.apache.org/guide/solr/latest/query-guide/common-query-parameters.html

16 months agofts-tika: Allow username and password in fts_tika
John Fawcett [Wed, 3 Jan 2024 13:42:51 +0000 (14:42 +0100)] 
fts-tika: Allow username and password in fts_tika

Allows specification of username and password in the fts_tika setting for basic
auth against tika server. For example
fts_tika = https://user:password@tika_server:443/tika