]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
3 years agolib-dcrypt: test-crypto - Add missing x9.62 roundtrip test
Aki Tuomi [Wed, 26 Oct 2022 09:18:52 +0000 (12:18 +0300)] 
lib-dcrypt: test-crypto - Add missing x9.62 roundtrip test

3 years agolib-dcrypt: Rename dcrypt-openssl.c to dcrypt-openssl1.c
Aki Tuomi [Wed, 26 Oct 2022 09:15:47 +0000 (12:15 +0300)] 
lib-dcrypt: Rename dcrypt-openssl.c to dcrypt-openssl1.c

3 years agolib-dcrypt: Add asserts to key ID and Usage accessors
Aki Tuomi [Tue, 1 Nov 2022 11:11:28 +0000 (13:11 +0200)] 
lib-dcrypt: Add asserts to key ID and Usage accessors

3 years agolib-dcrypt: Make error_r required
Aki Tuomi [Tue, 1 Nov 2022 10:55:36 +0000 (12:55 +0200)] 
lib-dcrypt: Make error_r required

3 years agoglobal: Call dcrypt always with error_r
Aki Tuomi [Tue, 1 Nov 2022 10:54:11 +0000 (12:54 +0200)] 
global: Call dcrypt always with error_r

3 years agolib-dcrytp: istream-decrypt - Report DER decoding issues
Aki Tuomi [Tue, 1 Nov 2022 11:02:22 +0000 (13:02 +0200)] 
lib-dcrytp: istream-decrypt - Report DER decoding issues

Fixes possibility of DER object decode error being reported
as truncation.

3 years agolib-dcrypt: Improve OpenSSL error handling
Aki Tuomi [Tue, 1 Nov 2022 10:29:40 +0000 (12:29 +0200)] 
lib-dcrypt: Improve OpenSSL error handling

Will now try to get the error more thoroughly and handles out of memory
correctly.

3 years agolib-ssl-iostream: Fix compability with OpenSSL 3.0
Aki Tuomi [Mon, 24 Oct 2022 11:05:46 +0000 (14:05 +0300)] 
lib-ssl-iostream: Fix compability with OpenSSL 3.0

3 years agolib-ssl-iostream: Do not attempt to load empty DH parameters
Aki Tuomi [Mon, 31 Oct 2022 09:08:49 +0000 (11:08 +0200)] 
lib-ssl-iostream: Do not attempt to load empty DH parameters

OpenSSL3 complains about empty DH parameters.

3 years agolib-ssl-iostream: Use EVP_PKEY to wrap DH parameters
Aki Tuomi [Mon, 31 Oct 2022 09:00:43 +0000 (11:00 +0200)] 
lib-ssl-iostream: Use EVP_PKEY to wrap DH parameters

Simplifies OpenSSL 3.0 compability

3 years agolib-ssl-iostream: Remove support for pre-1.0.2 OpenSSL
Aki Tuomi [Mon, 31 Oct 2022 08:59:29 +0000 (10:59 +0200)] 
lib-ssl-iostream: Remove support for pre-1.0.2 OpenSSL

3 years agom4: Update ssl.m4
Aki Tuomi [Mon, 24 Oct 2022 11:05:16 +0000 (14:05 +0300)] 
m4: Update ssl.m4

3 years agolib-ssl-iostream: Add test DH parameters
Aki Tuomi [Wed, 26 Oct 2022 16:25:37 +0000 (19:25 +0300)] 
lib-ssl-iostream: Add test DH parameters

3 years agoreplicator: Fix crash when removing user from queue and debug logging is enabled
Timo Sirainen [Tue, 1 Nov 2022 09:23:44 +0000 (11:23 +0200)] 
replicator: Fix crash when removing user from queue and debug logging is enabled

Broken by 4b5337667cea6dea3d684540ee79f26292f9b42d

3 years agoreplicator: Fix crash when importing user not listed by userdb iteration
Timo Sirainen [Tue, 1 Nov 2022 09:21:34 +0000 (11:21 +0200)] 
replicator: Fix crash when importing user not listed by userdb iteration

Broken by 31545b4f38ea85615f0111a33d630a03d92d22ab

3 years agodsync: ns_mailbox_try_alloc() - Don't set errstr_r when mailbox wasn't found
Timo Sirainen [Mon, 31 Oct 2022 20:39:25 +0000 (22:39 +0200)] 
dsync: ns_mailbox_try_alloc() - Don't set errstr_r when mailbox wasn't found

It's unnecessary and confusing, since the callers can't really use it
anyway.

3 years agodsync: Revert logging a more detailed reason why mailbox was lost
Timo Sirainen [Mon, 31 Oct 2022 20:37:34 +0000 (22:37 +0200)] 
dsync: Revert logging a more detailed reason why mailbox was lost

This code can't actually work, because the mailbox allocation is attempted
in multiple namespaces. The error would just come from the last namespace,
which might not have been the correct one.

Reverts cdf981514af4eb8af5a459d8e68bed2cccd7f37c

3 years agodsync: Remove unnecessary DSYNC_MAILBOX_IMPORT_FLAG_DEBUG
Timo Sirainen [Fri, 28 Oct 2022 10:00:03 +0000 (13:00 +0300)] 
dsync: Remove unnecessary DSYNC_MAILBOX_IMPORT_FLAG_DEBUG

The debug status comes from the parent event.

3 years agodsync: Remove unnecessary DSYNC_MAILBOX_TREES_SYNC_FLAG_DEBUG
Timo Sirainen [Fri, 28 Oct 2022 09:58:56 +0000 (12:58 +0300)] 
dsync: Remove unnecessary DSYNC_MAILBOX_TREES_SYNC_FLAG_DEBUG

The debug status comes from the parent event.

3 years agodsync: Use event_want_debug() rather than checking for debug flag
Timo Sirainen [Fri, 28 Oct 2022 09:58:43 +0000 (12:58 +0300)] 
dsync: Use event_want_debug() rather than checking for debug flag

3 years agodsync: Remove unused DSYNC_MAILBOX_TREES_SYNC_FLAG_MASTER_BRAIN
Timo Sirainen [Fri, 28 Oct 2022 09:57:13 +0000 (12:57 +0300)] 
dsync: Remove unused DSYNC_MAILBOX_TREES_SYNC_FLAG_MASTER_BRAIN

3 years agodsync: Remove duplicate "brain" log prefix
Timo Sirainen [Thu, 27 Oct 2022 22:17:48 +0000 (01:17 +0300)] 
dsync: Remove duplicate "brain" log prefix

Broken by 3ddb802f3e6faaac4fbeae1b33043bf0046138f4

3 years agomaildir: If mailbox create fails, don't try to apply mailbox_update changes
Timo Sirainen [Thu, 27 Oct 2022 21:56:29 +0000 (00:56 +0300)] 
maildir: If mailbox create fails, don't try to apply mailbox_update changes

This was especially causing problems with mailbox GUID mismatches in dsync.
The mismatch wasn't automatically fixed, because mailbox_create() incorrectly
kept updating the mailbox GUID for the already existing mailbox.

Fixes errors such as:
Remote lost mailbox GUID ... (maybe it was just deleted?)

3 years agodsync: Log a more detailed reason why mailbox was lost
Timo Sirainen [Thu, 27 Oct 2022 22:21:48 +0000 (01:21 +0300)] 
dsync: Log a more detailed reason why mailbox was lost

Although usually the reason is just that it wasn't found.

3 years agodoveadm-server: Log dsync's "desync" message with debug level
Timo Sirainen [Thu, 27 Oct 2022 22:20:43 +0000 (01:20 +0300)] 
doveadm-server: Log dsync's "desync" message with debug level

Previously this was logged only by the CLI doveadm tool as a warning.

3 years agoreplicator: Log dsync error code in debug message
Timo Sirainen [Thu, 27 Oct 2022 19:45:24 +0000 (22:45 +0300)] 
replicator: Log dsync error code in debug message

3 years agolib-doveadm, doveadm: Change hardcoded exit code 2 to DOVEADM_EX_CHANGED
Timo Sirainen [Thu, 27 Oct 2022 19:33:59 +0000 (22:33 +0300)] 
lib-doveadm, doveadm: Change hardcoded exit code 2 to DOVEADM_EX_CHANGED

This also gives it a "CHANGED" error code in the doveadm protocol.

3 years agoaggregator: Provide name for notify connection
Aki Tuomi [Tue, 16 Jan 2018 10:21:15 +0000 (12:21 +0200)] 
aggregator: Provide name for notify connection

3 years agoaggregator: Add debug logging
Aki Tuomi [Tue, 16 Jan 2018 10:20:11 +0000 (12:20 +0200)] 
aggregator: Add debug logging

3 years agoreplicator: Add debug logging
Aki Tuomi [Wed, 10 Jan 2018 14:06:52 +0000 (16:06 +0200)] 
replicator: Add debug logging

3 years agoreplicator: Add "replication" category to events
Timo Sirainen [Thu, 27 Oct 2022 08:54:29 +0000 (11:54 +0300)] 
replicator: Add "replication" category to events

3 years agoreplication plugin: Use "replication: " log prefix for all log messages
Timo Sirainen [Mon, 31 Oct 2022 09:23:00 +0000 (11:23 +0200)] 
replication plugin: Use "replication: " log prefix for all log messages

Some of the messages were missing the prefix. Some were using
"replication(user): " as the prefix, which was unnecessary since the
mail_log_prefix already contains the username.

3 years agoreplication plugin: Add "replication" category to events
Timo Sirainen [Thu, 27 Oct 2022 08:05:46 +0000 (11:05 +0300)] 
replication plugin: Add "replication" category to events

3 years agoreplicator: Add unit test to replicator-queue
Timo Sirainen [Tue, 16 Aug 2022 20:42:51 +0000 (23:42 +0300)] 
replicator: Add unit test to replicator-queue

3 years agoreplicator: Add replicator_queue_count() and replicator_queue_peek()
Timo Sirainen [Fri, 28 Oct 2022 14:57:03 +0000 (17:57 +0300)] 
replicator: Add replicator_queue_count() and replicator_queue_peek()

These will be useful for the following unit test.

3 years agoreplicator: Add "next sync secs" field to doveadm replicator status
Timo Sirainen [Tue, 25 Oct 2022 12:39:39 +0000 (15:39 +0300)] 
replicator: Add "next sync secs" field to doveadm replicator status

3 years agoreplicator: Make sure to prevent request starvation
Timo Sirainen [Tue, 25 Oct 2022 10:27:23 +0000 (13:27 +0300)] 
replicator: Make sure to prevent request starvation

This synchronizes how priority queue is ordered vs what
replicator_queue_want_sync_now() returns. The mismatch might have caused
request starvation in some situations because they behaved differently.

Also this change makes sure that higher priority requests don't infinitely
block lower priority requests. Instead, they get a temporary boost time
(hardcoded 15-45 minutes). Afterwards lower priority requests are started
to be handled as well.

3 years agoreplicator: Don't update user's last_update if priority doesn't change
Timo Sirainen [Tue, 25 Oct 2022 10:11:37 +0000 (13:11 +0300)] 
replicator: Don't update user's last_update if priority doesn't change

This didn't actually matter, since it was only used to check if importing
should update an existing user. However, importing is only run at startup
when all users have last_update=0 anyway.

The following changes bring new use cases for last_update.

3 years agoreplicator: Change replicator_queue_add_sync_callback() to take user struct
Timo Sirainen [Tue, 25 Oct 2022 10:08:36 +0000 (13:08 +0300)] 
replicator: Change replicator_queue_add_sync_callback() to take user struct

This is just to clean up the API to match the previous change.

3 years agoreplicator: Fix user placement in replication queue
Timo Sirainen [Tue, 25 Oct 2022 09:49:03 +0000 (12:49 +0300)] 
replicator: Fix user placement in replication queue

Especially replicator queue importing and NOTIFY command could have
placed the user to wrong place in the queue, because they modified the
last sync timestamps afterwards.

Fixed by splitting replicator_queue_add() into get/update/add(), so all
the necessary changes can be done before replicator_queue_add() is used
to place the user into the queue.

3 years agoquota: Drop rquota-pragmas.h
Aki Tuomi [Thu, 27 Oct 2022 07:26:01 +0000 (10:26 +0300)] 
quota: Drop rquota-pragmas.h

3 years agoquota: quota-fs - Ignore boolean errors with rquota.h
Aki Tuomi [Thu, 27 Oct 2022 07:25:15 +0000 (10:25 +0300)] 
quota: quota-fs - Ignore boolean errors with rquota.h

3 years agoquota: Fix rquota generation rules
Aki Tuomi [Thu, 27 Oct 2022 07:24:29 +0000 (10:24 +0300)] 
quota: Fix rquota generation rules

3 years agolib-storage: mailbox_attribute_get*() - Fail early on with empty key lookup
Timo Sirainen [Wed, 26 Oct 2022 23:56:45 +0000 (02:56 +0300)] 
lib-storage: mailbox_attribute_get*() - Fail early on with empty key lookup

This fixes using mail_attribute_dict with dict-sql.

3 years agostats: Replace i_<log>() with e_<log>()
Marco Bettini [Mon, 10 Oct 2022 08:46:46 +0000 (08:46 +0000)] 
stats: Replace i_<log>() with e_<log>()

3 years agoreplication: replicator - Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 28 Sep 2022 08:10:39 +0000 (08:10 +0000)] 
replication: replicator - Replace i_<log>() with e_<log>()

3 years agoreplication: struct replicator_queue - Move to replicator-queue-private.h
Marco Bettini [Thu, 6 Oct 2022 12:52:40 +0000 (12:52 +0000)] 
replication: struct replicator_queue - Move to replicator-queue-private.h

3 years agoreplication: aggregator - Replace i_<log>() with e_<log>()
Marco Bettini [Tue, 27 Sep 2022 14:33:24 +0000 (14:33 +0000)] 
replication: aggregator - Replace i_<log>() with e_<log>()

3 years agopop3: Replace i_<log>() with e_<log>()
Marco Bettini [Mon, 19 Sep 2022 13:19:39 +0000 (13:19 +0000)] 
pop3: Replace i_<log>() with e_<log>()

3 years agopop3: struct client - Add event
Marco Bettini [Fri, 14 Oct 2022 09:33:19 +0000 (09:33 +0000)] 
pop3: struct client - Add event

3 years agomaster: Replace i_<log>() with e_<log>()
Marco Bettini [Thu, 13 Oct 2022 14:43:59 +0000 (14:43 +0000)] 
master: Replace i_<log>() with e_<log>()

This reverts commit 4c6bd967436db31b5a050a55a3a35d83c70e299c.

3 years agomaster: Replace service_error() with e_error()
Marco Bettini [Thu, 13 Oct 2022 14:44:09 +0000 (14:44 +0000)] 
master: Replace service_error() with e_error()

This reverts commit e9ea9531521abf1e1a8456b30bf9d3668186b26a.

3 years agomaster: Add struct service.event, struct service_list.event
Marco Bettini [Fri, 30 Sep 2022 15:33:44 +0000 (15:33 +0000)] 
master: Add struct service.event, struct service_list.event

3 years agologin-common: Replace i_<log>() with e_<log>()
Marco Bettini [Thu, 6 Oct 2022 08:29:59 +0000 (08:29 +0000)] 
login-common: Replace i_<log>() with e_<log>()

3 years agolog: Replace i_<log>() with e_<log>()
Marco Bettini [Thu, 6 Oct 2022 09:31:33 +0000 (09:31 +0000)] 
log: Replace i_<log>() with e_<log>()

3 years agolda: Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 5 Oct 2022 13:18:12 +0000 (13:18 +0000)] 
lda: Replace i_<log>() with e_<log>()

3 years agoimap-urlauth: Replace i_<log>() with e_<log>()
Marco Bettini [Mon, 10 Oct 2022 10:32:17 +0000 (10:32 +0000)] 
imap-urlauth: Replace i_<log>() with e_<log>()

3 years agoimap: Replace i_<log>() with e_<log>()
Marco Bettini [Fri, 7 Oct 2022 13:58:12 +0000 (13:58 +0000)] 
imap: Replace i_<log>() with e_<log>()

3 years agoauth: Replace i_<log>() with e_<log>()
Marco Bettini [Tue, 27 Sep 2022 13:43:45 +0000 (13:43 +0000)] 
auth: Replace i_<log>() with e_<log>()

3 years agolib-sql: Replace i_<log>() with e_<log>()
Marco Bettini [Tue, 4 Oct 2022 14:59:44 +0000 (14:59 +0000)] 
lib-sql: Replace i_<log>() with e_<log>()

3 years agolib-program-client: Replace i_<log>() with e_<log>()
Marco Bettini [Tue, 4 Oct 2022 15:04:47 +0000 (15:04 +0000)] 
lib-program-client: Replace i_<log>() with e_<log>()

3 years agolib-mail: istream-attachment-extractor - Return read failure on unexpected errors
Marco Bettini [Wed, 12 Oct 2022 10:52:39 +0000 (10:52 +0000)] 
lib-mail: istream-attachment-extractor - Return read failure on unexpected errors

If the istream content unexpectedly changes or there are any syscall failures, the
istream reading should fail rather than handle it the same as if the base64 input
was invalid.

The way astream_part_finish() reports errors been modified:
Instead of returning -1 (failure) and 0(success) now it returns
-1 (failure, propagate *error and abort), 0 (invalid base64), 1(success)

3 years agolib-ldap: Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 5 Oct 2022 08:06:35 +0000 (08:06 +0000)] 
lib-ldap: Replace i_<log>() with e_<log>()

3 years agolib-ldap: struct ldap_client_settings - Add event
Marco Bettini [Tue, 11 Oct 2022 13:46:53 +0000 (13:46 +0000)] 
lib-ldap: struct ldap_client_settings - Add event

3 years agolib-lda: Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 5 Oct 2022 08:10:52 +0000 (08:10 +0000)] 
lib-lda: Replace i_<log>() with e_<log>()

3 years agolib-index: Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 5 Oct 2022 13:08:09 +0000 (13:08 +0000)] 
lib-index: Replace i_<log>() with e_<log>()

3 years agolib-imap-urlauth: imap_urlauth_fetch_local() - Reformat code
Marco Bettini [Thu, 6 Oct 2022 14:39:03 +0000 (14:39 +0000)] 
lib-imap-urlauth: imap_urlauth_fetch_local() - Reformat code

3 years agolib-imap-urlauth: Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 28 Sep 2022 14:47:26 +0000 (14:47 +0000)] 
lib-imap-urlauth: Replace i_<log>() with e_<log>()

3 years agolib-imap-client: Replace i_<log>() with e_<log>()
Marco Bettini [Thu, 29 Sep 2022 14:25:37 +0000 (14:25 +0000)] 
lib-imap-client: Replace i_<log>() with e_<log>()

3 years agolib-imap-client: Expose struct imapc_connection.event
Marco Bettini [Thu, 6 Oct 2022 14:05:30 +0000 (14:05 +0000)] 
lib-imap-client: Expose struct imapc_connection.event

3 years agolib-http: Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 5 Oct 2022 13:14:17 +0000 (13:14 +0000)] 
lib-http: Replace i_<log>() with e_<log>()

3 years agolib-fts: Update error message for the case where a stopword list is empty.
Marco Bettini [Tue, 11 Oct 2022 12:38:09 +0000 (12:38 +0000)] 
lib-fts: Update error message for the case where a stopword list is empty.

Now this condition is no longer allowed.

3 years agolib-dict-backend: ldap_dict_lookup_callback() - Reformat code
Marco Bettini [Thu, 6 Oct 2022 10:12:57 +0000 (10:12 +0000)] 
lib-dict-backend: ldap_dict_lookup_callback() - Reformat code

3 years agolib-dict-backend: Replace i_<log>() with e_<log>()
Marco Bettini [Tue, 4 Oct 2022 15:37:58 +0000 (15:37 +0000)] 
lib-dict-backend: Replace i_<log>() with e_<log>()

3 years agolib-dict-backend: struct ldap_dict - Add event
Marco Bettini [Tue, 11 Oct 2022 13:44:15 +0000 (13:44 +0000)] 
lib-dict-backend: struct ldap_dict - Add event

3 years agolib-login: Replace i_<log>() with e_<log>()
Marco Bettini [Wed, 5 Oct 2022 12:53:46 +0000 (12:53 +0000)] 
lib-login: Replace i_<log>() with e_<log>()

3 years agolib-login: struct login_server_connection - Move to header file and add event field
Marco Bettini [Fri, 7 Oct 2022 14:04:07 +0000 (14:04 +0000)] 
lib-login: struct login_server_connection  - Move to header file and add event field

3 years agolib-master: Replace i_<log>() with e_<log>()
Marco Bettini [Tue, 4 Oct 2022 15:02:06 +0000 (15:02 +0000)] 
lib-master: Replace i_<log>() with e_<log>()

3 years agolib-auth: auth_user_fields_parse() - Fail on parse errors rather than just log it
Marco Bettini [Tue, 11 Oct 2022 11:03:41 +0000 (11:03 +0000)] 
lib-auth: auth_user_fields_parse() - Fail on parse errors rather than just log it

3 years agologin-common: Remove access-lookup.[ch]
Marco Bettini [Thu, 13 Oct 2022 14:09:43 +0000 (14:09 +0000)] 
login-common: Remove access-lookup.[ch]

leftover from 97815ea9

3 years agoglobal: Remove stray whitespaces
Marco Bettini [Wed, 28 Sep 2022 09:16:54 +0000 (09:16 +0000)] 
global: Remove stray whitespaces

3 years agoimap-login: Amend ID cmd response with trust-state
Karl Fleischmann [Tue, 18 Oct 2022 06:39:43 +0000 (08:39 +0200)] 
imap-login: Amend ID cmd response with trust-state

3 years agolib-storage: Finish renaming mail_stream_opened to mail_stream_accessed in comment
Timo Sirainen [Fri, 21 Oct 2022 07:49:53 +0000 (10:49 +0300)] 
lib-storage: Finish renaming mail_stream_opened to mail_stream_accessed in comment

Forgotten in d7b8c4097185e2ab40acf43524f48fcde80f615d

3 years agodoveadm: Make some functions public to allow plugins to send proxy commands
Timo Sirainen [Wed, 12 Oct 2022 13:30:53 +0000 (16:30 +0300)] 
doveadm: Make some functions public to allow plugins to send proxy commands

3 years agodoveadm: Remove global cmd_ctx variable
Timo Sirainen [Wed, 12 Oct 2022 14:06:38 +0000 (17:06 +0300)] 
doveadm: Remove global cmd_ctx variable

3 years agolib: Always evaluate e_error(), e_warning() and e_info() parameters
Timo Sirainen [Wed, 19 Oct 2022 22:29:18 +0000 (01:29 +0300)] 
lib: Always evaluate e_error(), e_warning() and e_info() parameters

e_debug() still delays evaluation until it's known that the event won't
simply be discarded. Since there are lots of e_debug() calls, this is a
good performance optimization. Other types of logging are much more rare
though and it's not so useful as an optimization. It can also be
unexpected that the evaluation doesn't happen. Especially with e_error()
and e_warning() it is expected, since it's only some special circumstances
where they don't log the output.

3 years agoREADME.m4: Update contact info
Timo Sirainen [Fri, 21 Oct 2022 07:59:13 +0000 (10:59 +0300)] 
README.m4: Update contact info

3 years agoREADME.md: Update http links to https
Randolf Richardson [Sat, 15 Oct 2022 00:13:05 +0000 (17:13 -0700)] 
README.md: Update http links to https

3 years agolib-storage: mail-storage-list-index-rebuild - Don't use continue inside T_BEGIN...
Martti Rannanjärvi [Wed, 19 Oct 2022 06:26:55 +0000 (09:26 +0300)] 
lib-storage: mail-storage-list-index-rebuild - Don't use continue inside T_BEGIN..T_END

Coverity doesn't like using continue there.

3 years agolib-storage: mailbox_set_index_error() - Fix last_internal_error_mailbox leak
Martti Rannanjärvi [Wed, 19 Oct 2022 03:43:00 +0000 (06:43 +0300)] 
lib-storage: mailbox_set_index_error() - Fix last_internal_error_mailbox leak

Broken by 0a09f7321f00253dfacd87453462e6c43ea926bf

3 years agoimapc: imapc_mailbox_get_status() - Implement STATUS_UNSEEN with INDEXPVT
Markus Valentin [Wed, 12 Oct 2022 11:26:03 +0000 (13:26 +0200)] 
imapc: imapc_mailbox_get_status() - Implement STATUS_UNSEEN with INDEXPVT

3 years agolib-storage: LAYOUT=index rebuild - Fix detecting duplicate mailbox GUIDs in index
Aki Tuomi [Wed, 5 Oct 2022 12:42:25 +0000 (15:42 +0300)] 
lib-storage: LAYOUT=index rebuild - Fix detecting duplicate mailbox GUIDs in index

Otherwise duplicate folders are not properly cleared out.

Broken in 2fc8d7024bb161aab08031b8212a736301844858

3 years agolib-storage: LAYOUT=index rebuild - Remove existence check
Aki Tuomi [Wed, 5 Oct 2022 12:27:31 +0000 (15:27 +0300)] 
lib-storage: LAYOUT=index rebuild - Remove existence check

It's not needed.

3 years agolib-storage: LAYOUT=index rebuild - Sort mailbox tree before creating
Aki Tuomi [Tue, 27 Sep 2022 12:03:37 +0000 (15:03 +0300)] 
lib-storage: LAYOUT=index rebuild - Sort mailbox tree before creating

Try to load the mailbox original name already from storage
so we can sort & create the mailbox tree in correct order.

3 years agolib-storage: LAYOUT=index rebuild - Remove first_list usage
Aki Tuomi [Tue, 27 Sep 2022 10:01:29 +0000 (13:01 +0300)] 
lib-storage: LAYOUT=index rebuild - Remove first_list usage

Instead, keep track of the list where box was found.

3 years agolib-storage: LAYOUT=index rebuild - Remove useless check for LAYOUT=index
Aki Tuomi [Wed, 5 Oct 2022 12:15:17 +0000 (15:15 +0300)] 
lib-storage: LAYOUT=index rebuild - Remove useless check for LAYOUT=index

This is already done when collecting namespaces.

Simplifies next change.

3 years agolib-storage: LAYOUT=index rebuild - Fix rebuilds when using multiple namespaces
Aki Tuomi [Wed, 21 Sep 2022 08:14:40 +0000 (11:14 +0300)] 
lib-storage: LAYOUT=index rebuild - Fix rebuilds when using multiple namespaces

The old code did not properly populate the mailbox list for each
namespace, but only for the first namespace. This caused mailbox
storage existence checks to always fail.

This applies for LAYOUT=index only.

Broken in 2fc8d7024bb161aab08031b8212a736301844858

3 years agolib-storage: list - Add separators to mailbox names when decoding from index
Aki Tuomi [Tue, 18 Oct 2022 08:35:22 +0000 (11:35 +0300)] 
lib-storage: list - Add separators to mailbox names when decoding from index

Mailbox name header decode did not add separators to name,
producing only FooBarBar, when it was supposed to give
Foo/Bar/Baz.

Broken in 8216a079d8aac93e2537ed79485e301350ff3887

3 years agolib-storage: Add assert to help scan-build
Timo Sirainen [Fri, 14 Oct 2022 07:55:39 +0000 (10:55 +0300)] 
lib-storage: Add assert to help scan-build

3 years agodoveadm sis: Fix "Uninitialized argument value" scan-build complaint
Timo Sirainen [Fri, 14 Oct 2022 07:53:24 +0000 (10:53 +0300)] 
doveadm sis: Fix "Uninitialized argument value" scan-build complaint

The code was a bit ugly in that it didn't set error_r on ENOENT. There was
no bug because the caller did check for this, but scan-build didn't
understand it.