]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
5 years agoplugins: push-notification: Reformat push-notification-events.h.
Stephan Bosch [Sun, 1 Dec 2019 10:30:32 +0000 (11:30 +0100)] 
plugins: push-notification: Reformat push-notification-events.h.

5 years agoplugins: push-notification: Reformat push-notification-events.c.
Stephan Bosch [Sun, 1 Dec 2019 10:30:27 +0000 (11:30 +0100)] 
plugins: push-notification: Reformat push-notification-events.c.

5 years agoplugins: push-notification: Reformat push-notification-events-rfc5423.h.
Stephan Bosch [Sun, 1 Dec 2019 10:30:14 +0000 (11:30 +0100)] 
plugins: push-notification: Reformat push-notification-events-rfc5423.h.

5 years agoplugins: push-notification: Reformat push-notification-events-rfc5423.c.
Stephan Bosch [Sun, 1 Dec 2019 10:30:09 +0000 (11:30 +0100)] 
plugins: push-notification: Reformat push-notification-events-rfc5423.c.

5 years agoplugins: push-notification: Reformat push-notification-event-messagetrash.h.
Stephan Bosch [Sun, 1 Dec 2019 10:29:44 +0000 (11:29 +0100)] 
plugins: push-notification: Reformat push-notification-event-messagetrash.h.

5 years agoplugins: push-notification: Reformat push-notification-event-messagetrash.c.
Stephan Bosch [Sun, 1 Dec 2019 10:29:41 +0000 (11:29 +0100)] 
plugins: push-notification: Reformat push-notification-event-messagetrash.c.

5 years agoplugins: push-notification: Reformat push-notification-event-messageread.h.
Stephan Bosch [Sun, 1 Dec 2019 10:29:28 +0000 (11:29 +0100)] 
plugins: push-notification: Reformat push-notification-event-messageread.h.

5 years agoplugins: push-notification: Reformat push-notification-event-messageread.c.
Stephan Bosch [Sun, 1 Dec 2019 10:29:23 +0000 (11:29 +0100)] 
plugins: push-notification: Reformat push-notification-event-messageread.c.

5 years agoplugins: push-notification: Reformat push-notification-event-messagenew.h.
Stephan Bosch [Sun, 1 Dec 2019 10:29:10 +0000 (11:29 +0100)] 
plugins: push-notification: Reformat push-notification-event-messagenew.h.

5 years agoplugins: push-notification: Reformat push-notification-event-messagenew.c.
Stephan Bosch [Sun, 1 Dec 2019 10:29:06 +0000 (11:29 +0100)] 
plugins: push-notification: Reformat push-notification-event-messagenew.c.

5 years agoplugins: push-notification: Reformat push-notification-event-messageexpunge.h.
Stephan Bosch [Sun, 1 Dec 2019 10:28:46 +0000 (11:28 +0100)] 
plugins: push-notification: Reformat push-notification-event-messageexpunge.h.

5 years agoplugins: push-notification: Reformat push-notification-event-messageexpunge.c.
Stephan Bosch [Sun, 1 Dec 2019 10:28:42 +0000 (11:28 +0100)] 
plugins: push-notification: Reformat push-notification-event-messageexpunge.c.

5 years agoplugins: push-notification: Reformat push-notification-event-messageappend.h.
Stephan Bosch [Sun, 1 Dec 2019 10:28:27 +0000 (11:28 +0100)] 
plugins: push-notification: Reformat push-notification-event-messageappend.h.

5 years agoplugins: push-notification: Reformat push-notification-event-messageappend.c.
Stephan Bosch [Sun, 1 Dec 2019 10:28:22 +0000 (11:28 +0100)] 
plugins: push-notification: Reformat push-notification-event-messageappend.c.

5 years agoplugins: push-notification: Reformat push-notification-event-message-common.h.
Stephan Bosch [Sun, 1 Dec 2019 10:28:07 +0000 (11:28 +0100)] 
plugins: push-notification: Reformat push-notification-event-message-common.h.

5 years agoplugins: push-notification: Reformat push-notification-event-message-common.c.
Stephan Bosch [Sun, 1 Dec 2019 10:28:02 +0000 (11:28 +0100)] 
plugins: push-notification: Reformat push-notification-event-message-common.c.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxunsubscribe.h.
Stephan Bosch [Sun, 1 Dec 2019 10:27:35 +0000 (11:27 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxunsubscribe.h.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxunsubscribe.c.
Stephan Bosch [Sun, 1 Dec 2019 10:27:29 +0000 (11:27 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxunsubscribe.c.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxsubscribe.h.
Stephan Bosch [Sun, 1 Dec 2019 10:27:17 +0000 (11:27 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxsubscribe.h.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxsubscribe.c.
Stephan Bosch [Sun, 1 Dec 2019 10:27:05 +0000 (11:27 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxsubscribe.c.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxrename.h.
Stephan Bosch [Sun, 1 Dec 2019 10:26:41 +0000 (11:26 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxrename.h.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxrename.c.
Stephan Bosch [Sun, 1 Dec 2019 10:26:35 +0000 (11:26 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxrename.c.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxdelete.h.
Stephan Bosch [Sun, 1 Dec 2019 10:26:18 +0000 (11:26 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxdelete.h.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxdelete.c.
Stephan Bosch [Sun, 1 Dec 2019 10:26:13 +0000 (11:26 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxdelete.c.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxcreate.h.
Stephan Bosch [Sun, 1 Dec 2019 10:25:55 +0000 (11:25 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxcreate.h.

5 years agoplugins: push-notification: Reformat push-notification-event-mailboxcreate.c.
Stephan Bosch [Sun, 1 Dec 2019 10:25:50 +0000 (11:25 +0100)] 
plugins: push-notification: Reformat push-notification-event-mailboxcreate.c.

5 years agoplugins: push-notification: Reformat push-notification-event-flagsset.h.
Stephan Bosch [Sun, 1 Dec 2019 10:25:31 +0000 (11:25 +0100)] 
plugins: push-notification: Reformat push-notification-event-flagsset.h.

5 years agoplugins: push-notification: Reformat push-notification-event-flagsset.c.
Stephan Bosch [Sun, 1 Dec 2019 10:25:22 +0000 (11:25 +0100)] 
plugins: push-notification: Reformat push-notification-event-flagsset.c.

5 years agoplugins: push-notification: Reformat push-notification-event-flagsclear.h.
Stephan Bosch [Sun, 1 Dec 2019 10:25:09 +0000 (11:25 +0100)] 
plugins: push-notification: Reformat push-notification-event-flagsclear.h.

5 years agoplugins: push-notification: Reformat push-notification-event-flagsclear.c.
Stephan Bosch [Sun, 1 Dec 2019 10:25:03 +0000 (11:25 +0100)] 
plugins: push-notification: Reformat push-notification-event-flagsclear.c.

5 years agoplugins: push-notification: Reformat push-notification-drivers.h.
Stephan Bosch [Sun, 1 Dec 2019 10:24:28 +0000 (11:24 +0100)] 
plugins: push-notification: Reformat push-notification-drivers.h.

5 years agoplugins: push-notification: Reformat push-notification-drivers.c.
Stephan Bosch [Sun, 1 Dec 2019 10:24:19 +0000 (11:24 +0100)] 
plugins: push-notification: Reformat push-notification-drivers.c.

5 years agoplugins: push-notification: Reformat push-notification-driver-ox.c.
Stephan Bosch [Sun, 1 Dec 2019 10:24:04 +0000 (11:24 +0100)] 
plugins: push-notification: Reformat push-notification-driver-ox.c.

5 years agoplugins: push-notification: Reformat push-notification-driver-lua.c.
Stephan Bosch [Sun, 1 Dec 2019 10:23:55 +0000 (11:23 +0100)] 
plugins: push-notification: Reformat push-notification-driver-lua.c.

5 years agoplugins: push-notification: Reformat push-notification-driver-dlog.c.
Stephan Bosch [Sun, 1 Dec 2019 10:23:39 +0000 (11:23 +0100)] 
plugins: push-notification: Reformat push-notification-driver-dlog.c.

5 years agolib: Timeouts may have been run a bit too early
Timo Sirainen [Tue, 4 Feb 2020 16:56:28 +0000 (18:56 +0200)] 
lib: Timeouts may have been run a bit too early

The timeout was run early if it was to be run in less than 1 millisecond.

This could have resulted in an infinite loop in some special situations
when timeout_add_absolute() was used in a timeout callback.

5 years agolib: Add i_nanoseconds() and i_microseconds()
Timo Sirainen [Mon, 3 Feb 2020 10:57:52 +0000 (12:57 +0200)] 
lib: Add i_nanoseconds() and i_microseconds()

5 years agoglobal: Replace the rest of the gettimeofday() calls with i_gettimeofday()
Timo Sirainen [Fri, 24 Jan 2020 21:36:52 +0000 (23:36 +0200)] 
global: Replace the rest of the gettimeofday() calls with i_gettimeofday()

It can't practically fail, so don't keep error handling that is never
tested.

5 years agoglobal: Replace most gettimeofday() calls with i_gettimeofday()
Timo Sirainen [Fri, 24 Jan 2020 21:33:05 +0000 (23:33 +0200)] 
global: Replace most gettimeofday() calls with i_gettimeofday()

Replace the ones where error handling is:
 * Nonexistent
 * i_fatal()
 * i_panic()

5 years agolib: Add i_gettimeofday()
Timo Sirainen [Fri, 24 Jan 2020 21:27:09 +0000 (23:27 +0200)] 
lib: Add i_gettimeofday()

5 years agolib-program-client: Allocate string settings on the client pool.
Stephan Bosch [Sun, 13 Jan 2019 22:34:14 +0000 (23:34 +0100)] 
lib-program-client: Allocate string settings on the client pool.

Before, it assumed the strings to be durably allocated externally, which is very
risky.

5 years agolib-smtp: client: transaction: Prevent NULL dereference in smtp_client_transaction_un...
Stephan Bosch [Sun, 13 Jan 2019 22:17:54 +0000 (23:17 +0100)] 
lib-smtp: client: transaction: Prevent NULL dereference in smtp_client_transaction_unref().

The trans pointer is used before it is checked for being NULL, which is allowed
for this function.

Problem found by Coverity.

5 years agolib-index: Explicitly ignore mail_index_cancel_flag_updates() return value
Timo Sirainen [Sat, 25 Jan 2020 14:25:04 +0000 (16:25 +0200)] 
lib-index: Explicitly ignore mail_index_cancel_flag_updates() return value

Makes static analyzers happier.

5 years agolib-mail: Initialize start_pos in message_header_decode_encoded
Aki Tuomi [Thu, 23 Jan 2020 08:45:35 +0000 (10:45 +0200)] 
lib-mail: Initialize start_pos in message_header_decode_encoded

Satisfies static analyzers

5 years agolib-program-client: Ensure set is not NULL in program_client_init
Aki Tuomi [Thu, 23 Jan 2020 08:44:28 +0000 (10:44 +0200)] 
lib-program-client: Ensure set is not NULL in program_client_init

Would cause crash otherwise.

Found by coverity.

5 years agodoveadm: doveadm-mail-mailbox-metadata - Handle error in doveadm_print_istream
Aki Tuomi [Thu, 23 Jan 2020 08:42:20 +0000 (10:42 +0200)] 
doveadm: doveadm-mail-mailbox-metadata - Handle error in doveadm_print_istream

Found by coverity

5 years agolib-smtp: Remove double-assign of passthrough event
Aki Tuomi [Thu, 23 Jan 2020 08:33:17 +0000 (10:33 +0200)] 
lib-smtp: Remove double-assign of passthrough event

Found by coverity

5 years agodoveadm: doveadm-sis - Ensure buf2 is not overrun
Aki Tuomi [Thu, 23 Jan 2020 07:57:26 +0000 (09:57 +0200)] 
doveadm: doveadm-sis - Ensure buf2 is not overrun

Satisfies static analysers.

5 years agolib-mail: Add assert to ensure we don't overstep in input_idx_need_encoding
Aki Tuomi [Thu, 23 Jan 2020 07:54:44 +0000 (09:54 +0200)] 
lib-mail: Add assert to ensure we don't overstep in input_idx_need_encoding

Satisfies static analysers.

5 years agolib-http: Fix memory leak in http_server_response_add_permanent_header
Aki Tuomi [Thu, 23 Jan 2020 07:20:25 +0000 (09:20 +0200)] 
lib-http: Fix memory leak in http_server_response_add_permanent_header

Key and value is duplicated twice and the first duplicates are
discarded without freeing.

Found by coverity.

5 years agolib: Assert-crash on i_rand_limit(0) and add unit tests
Timo Sirainen [Fri, 17 Jan 2020 09:30:53 +0000 (11:30 +0200)] 
lib: Assert-crash on i_rand_limit(0) and add unit tests

5 years agolib: event_filter_match() - "field=" filter now matches nonexistent field
Timo Sirainen [Wed, 12 Sep 2018 13:30:32 +0000 (16:30 +0300)] 
lib: event_filter_match() - "field=" filter now matches nonexistent field

This makes sense, because event_filter_clear() also works by adding an empty
value to the event. So it wouldn't even be possible to differentiate between
empty and nonexistent fields unless larger changes were made.

5 years agolib-smtp: smtp-client-transaction - Fix immediate transaction to wait until the conne...
Stephan Bosch [Sat, 27 Jul 2019 21:33:22 +0000 (23:33 +0200)] 
lib-smtp: smtp-client-transaction - Fix immediate transaction to wait until the connection is ready.

A transaction with the immediate mode enabled did not wait and started to submit
commands too early; i.e., before an EHLO reply is received. This means that
the first MAIL command is always sent bare without any extensions and the XCLIENT
command is not sent when it is deferred (e.g. for submission).

5 years agolib-index: Fix potential assert-crash when refreshing index without any views
Timo Sirainen [Mon, 27 Jan 2020 20:52:51 +0000 (22:52 +0200)] 
lib-index: Fix potential assert-crash when refreshing index without any views

This is similar to the previous fix. If there are no references to the log
file head, refreshing the index will result in assert-crash.

This seems to have happened in some very rare situations. Mainly found it
via the unit test though.

Fixes:
Panic: file mail-transaction-log.c: line 25 (mail_transaction_log_set_head): assertion failed: (log->files != NULL)

5 years agolib-index: Add unit test for log rotation during commit
Timo Sirainen [Mon, 27 Jan 2020 10:35:10 +0000 (12:35 +0200)] 
lib-index: Add unit test for log rotation during commit

5 years agolib-index: Fix potential assert-crash when rotating log file
Timo Sirainen [Fri, 20 Sep 2019 12:48:10 +0000 (15:48 +0300)] 
lib-index: Fix potential assert-crash when rotating log file

Unlock the old head file before attempting to clean it. Fixes:

Panic: file mail-transaction-log.c: line 229 (mail_transaction_logs_clean): assertion failed: (!file->locked || file->refcount > 0)

This seems to only have happened during new obox index merging.

5 years agolib-index: Add test-mail-index.h for easily doing init/deinit for mail_index
Timo Sirainen [Mon, 27 Jan 2020 10:11:13 +0000 (12:11 +0200)] 
lib-index: Add test-mail-index.h for easily doing init/deinit for mail_index

5 years agolib-mail: Parse multiple address headers the same as if they were in a single header
Timo Sirainen [Fri, 6 Sep 2019 09:09:58 +0000 (12:09 +0300)] 
lib-mail: Parse multiple address headers the same as if they were in a single header

This is better from security point of view.

5 years agolib-storage: Make sure ENVELOPE parsing isn't done twice concurrently
Timo Sirainen [Mon, 9 Sep 2019 16:16:19 +0000 (19:16 +0300)] 
lib-storage: Make sure ENVELOPE parsing isn't done twice concurrently

If save_envelope=TRUE and ENVELOPE headers aren't already in cache,
header_cache_callback() starts parsing the ENVELOPE. But
imap_envelope_parse_callback() does it as well, so the envelope parsing is
done concurrently by the two callbacks.

Also once the ENVELOPE parsing is done once, make sure it's not done again
if the header is parsed again.

This didn't cause any problems so far, but it fixes the following commit to
work correctly.

5 years agolazy-expunge: Add MAIL_FETCH_REFCOUNT to mail's wanted_fields
Timo Sirainen [Thu, 28 Nov 2019 17:38:10 +0000 (19:38 +0200)] 
lazy-expunge: Add MAIL_FETCH_REFCOUNT to mail's wanted_fields

The mail is reused by the search query, so the next mail_prefetch() can try
to prefetch the refcount.

5 years agolib: event-log.c - Ensure checks for enabling debug logging are always run.
Stephan Bosch [Thu, 16 Jan 2020 23:36:54 +0000 (00:36 +0100)] 
lib: event-log.c - Ensure checks for enabling debug logging are always run.

5 years agodoc: Add man page for dovecot-sysreport
Sina Tavakoli [Tue, 21 Jan 2020 15:03:00 +0000 (17:03 +0200)] 
doc: Add man page for dovecot-sysreport

5 years agoutil: Add a script to gather system information in an archive for report purpose.
Sina Tavakoli [Wed, 15 Jan 2020 09:40:24 +0000 (11:40 +0200)] 
util: Add a script to gather system information in an archive for report purpose.

5 years agolib-fs: Create fs.event earlier so it's available in fs_init() code
Timo Sirainen [Fri, 24 Jan 2020 10:33:14 +0000 (12:33 +0200)] 
lib-fs: Create fs.event earlier so it's available in fs_init() code

5 years agoacl: Fix accessing attributes when mailbox had no READ rights
Timo Sirainen [Wed, 15 Jan 2020 13:46:47 +0000 (15:46 +0200)] 
acl: Fix accessing attributes when mailbox had no READ rights

It's enough to have one of the other rights.

5 years agolib-storage, imap, doveadm: Add and use MAILBOX_FLAG_ATTRIBUTE_SESSION
Timo Sirainen [Wed, 15 Jan 2020 13:35:26 +0000 (15:35 +0200)] 
lib-storage, imap, doveadm: Add and use MAILBOX_FLAG_ATTRIBUTE_SESSION

5 years agoacl: Improve attribute rights check error handling
Timo Sirainen [Wed, 15 Jan 2020 13:45:21 +0000 (15:45 +0200)] 
acl: Improve attribute rights check error handling

5 years agoacl: Move attribute rights checking to its own function
Timo Sirainen [Wed, 15 Jan 2020 13:43:11 +0000 (15:43 +0200)] 
acl: Move attribute rights checking to its own function

5 years agolib-imap-storage, doveadm: Ignore INBOX ACLs when accessing server metadata
Timo Sirainen [Tue, 14 Jan 2020 12:58:05 +0000 (14:58 +0200)] 
lib-imap-storage, doveadm: Ignore INBOX ACLs when accessing server metadata

The server metadata is always accessible. INBOX's ACLs aren't relevant,
even though internally for now we're using INBOX for storing the server
metadata.

5 years agolib-storage, acl: Fix error trying to open autocreated mailbox without CREATE rights
Timo Sirainen [Wed, 15 Jan 2020 13:40:41 +0000 (15:40 +0200)] 
lib-storage, acl: Fix error trying to open autocreated mailbox without CREATE rights

The opening should fail with a regular error message rather than "internal
server error". Also no error message should be logged in this situation.

5 years agodns, login-common, stats: Finish service initialization later
Timo Sirainen [Sat, 9 Nov 2019 08:49:47 +0000 (10:49 +0200)] 
dns, login-common, stats: Finish service initialization later

This way if there's a crash in the init code, master will start throttling
the service.

5 years agosubmission-login: submission-proxy - Properly encode XCLIENT command arguments.
Stephan Bosch [Thu, 12 Dec 2019 08:31:48 +0000 (09:31 +0100)] 
submission-login: submission-proxy - Properly encode XCLIENT command arguments.

5 years agosubmission-login: submission-proxy - Compose XCLIENT forward argument in a separate...
Stephan Bosch [Thu, 12 Dec 2019 08:31:48 +0000 (09:31 +0100)] 
submission-login: submission-proxy - Compose XCLIENT forward argument in a separate function.

5 years agosubmission-login: Reformat submission-proxy.c.
Stephan Bosch [Thu, 12 Dec 2019 08:38:51 +0000 (09:38 +0100)] 
submission-login: Reformat submission-proxy.c.

5 years agolib-smtp: server: Fix copying xclient_extensions settings
Timo Sirainen [Wed, 11 Dec 2019 13:05:50 +0000 (15:05 +0200)] 
lib-smtp: server: Fix copying xclient_extensions settings

smtp_server_connection didn't properly copy the xclient_extensions settings
from the smtp_server. In fact it did the opposite of recreating the server
settings using the connection pool. Later on after the connection was freed
and another connection created this could result in crashes.

5 years agolib-imap: imap_write_arg() - minor optimization to IMAP_ARG_STRING
Timo Sirainen [Thu, 24 Oct 2019 08:43:58 +0000 (11:43 +0300)] 
lib-imap: imap_write_arg() - minor optimization to IMAP_ARG_STRING

Avoid unnecessarily using data stack.

Also add unit tests to imap_write_arg().

5 years agolib-fs: Add errno parameter to fs_set_error() change callers to use it.
Timo Sirainen [Tue, 21 Jan 2020 13:59:51 +0000 (15:59 +0200)] 
lib-fs: Add errno parameter to fs_set_error() change callers to use it.

This is now explicit so it can't be forgotten accidentally. Fixes several
bugs where errno wasn't set on error conditions, which could have caused
callers to handle the error wrong.

5 years agolib-fs: Use fs_set_error_errno() where appropriate
Timo Sirainen [Tue, 21 Jan 2020 13:54:42 +0000 (15:54 +0200)] 
lib-fs: Use fs_set_error_errno() where appropriate

5 years agolib-fs: Add fs_set_error_errno()
Timo Sirainen [Tue, 21 Jan 2020 13:50:07 +0000 (15:50 +0200)] 
lib-fs: Add fs_set_error_errno()

This is in preparation for adding errno parameter for fs_set_error().

5 years agodoc: example-config: Add documentation for "revision" field in imap_id_send
Siavash Tavakoli [Mon, 13 Jan 2020 09:50:51 +0000 (11:50 +0200)] 
doc: example-config: Add documentation for "revision" field in imap_id_send

5 years agolib-imap: Add revision field for ID command
Siavash Tavakoli [Mon, 9 Dec 2019 11:58:50 +0000 (13:58 +0200)] 
lib-imap: Add revision field for ID command

Returns short commit ID of the revision dovecot was built from.

5 years agolib-fs: Fix event leak when EAGAIN error is logged via fs_set_error()
Timo Sirainen [Mon, 20 Jan 2020 14:15:41 +0000 (16:15 +0200)] 
lib-fs: Fix event leak when EAGAIN error is logged via fs_set_error()

Broken by f7aafd832151dd34e28cb1bba214accf9b15d908

5 years agolib-fs: Don't log "Asynchronous operation in progress" debug messages
Timo Sirainen [Tue, 14 Jan 2020 21:28:53 +0000 (23:28 +0200)] 
lib-fs: Don't log "Asynchronous operation in progress" debug messages

5 years agolazy-expunge: Track duplicate messages using REFCOUNT_ID rather than GUID
Timo Sirainen [Thu, 28 Nov 2019 18:30:08 +0000 (20:30 +0200)] 
lazy-expunge: Track duplicate messages using REFCOUNT_ID rather than GUID

Although these are usually the same, that's not really guaranteed.
Also REFCOUNT_ID can be more efficient to lookup than GUID.

5 years agolib-storage: Add MAIL_FETCH_REFCOUNT_ID
Timo Sirainen [Thu, 28 Nov 2019 18:28:35 +0000 (20:28 +0200)] 
lib-storage: Add MAIL_FETCH_REFCOUNT_ID

This returns a unique ID for the mail that is counted by
MAIL_FETCH_REFCOUNT. For example if the refcount is counted using the
file's st_nlinks, then the refcount-id is the file's inode number. This is
likely only going to be used by lazy_expunge_only_last_instance=yes
tracking.

5 years agolib-ssl-iostream: Don't link unit test with -static
Timo Sirainen [Tue, 3 Dec 2019 22:45:34 +0000 (00:45 +0200)] 
lib-ssl-iostream: Don't link unit test with -static

It's not useful and it breaks in some systems.

5 years agoplugins: fts-solr: solr-response - Fix incremental parsing of XML element data in...
Stephan Bosch [Tue, 8 Oct 2019 16:57:02 +0000 (18:57 +0200)] 
plugins: fts-solr: solr-response - Fix incremental parsing of XML element data in small chunks.

5 years agoplugins: fts-solr: solr-response - Use strnum.h for numeric parsing.
Stephan Bosch [Tue, 8 Oct 2019 16:57:00 +0000 (18:57 +0200)] 
plugins: fts-solr: solr-response - Use strnum.h for numeric parsing.

5 years agoplugins: fts-solr: solr-response - Make lookup response parser a separate entity.
Stephan Bosch [Tue, 8 Oct 2019 16:57:00 +0000 (18:57 +0200)] 
plugins: fts-solr: solr-response - Make lookup response parser a separate entity.

This improves the structure of the code and allows writing a unit test for the
parser, which is included in this commit.

5 years agoplugins: fts-solr: solr-reponse - Move init/deinit of struct solr_response_parser...
Stephan Bosch [Tue, 8 Oct 2019 16:57:00 +0000 (18:57 +0200)] 
plugins: fts-solr: solr-reponse - Move init/deinit of struct solr_response_parser to separate functions.

5 years agoplugins: fts-solr: solr-connection - Use i_stream_get_error() for reporting stream...
Stephan Bosch [Tue, 8 Oct 2019 16:56:59 +0000 (18:56 +0200)] 
plugins: fts-solr: solr-connection - Use i_stream_get_error() for reporting stream errors.

5 years agoplugins: fts-solr: Move xml_parser field from struct solr_connection to struct solr_r...
Stephan Bosch [Tue, 8 Oct 2019 16:56:59 +0000 (18:56 +0200)] 
plugins: fts-solr: Move xml_parser field from struct solr_connection to struct solr_response_parser.

5 years agoplugins: fts-solr: solr-response - Rename struct solr_lookup_xml_context to struct...
Stephan Bosch [Tue, 8 Oct 2019 16:56:59 +0000 (18:56 +0200)] 
plugins: fts-solr: solr-response - Rename struct solr_lookup_xml_context to struct solr_response_parser.

Also rename the variable names accordingly.

5 years agoplugins: fts-solr: solr-connection - Remove useless XML_ParserReset() calls.
Stephan Bosch [Tue, 8 Oct 2019 16:56:58 +0000 (18:56 +0200)] 
plugins: fts-solr: solr-connection - Remove useless XML_ParserReset() calls.

5 years agoplugins: fts-solr: solr-connection - Put all update context data in struct solr_conne...
Stephan Bosch [Tue, 8 Oct 2019 16:56:58 +0000 (18:56 +0200)] 
plugins: fts-solr: solr-connection - Put all update context data in struct solr_connection_post.

5 years agoplugins: fts-solr: solr-connection - Move lookup context data to separate struct.
Stephan Bosch [Tue, 8 Oct 2019 16:56:58 +0000 (18:56 +0200)] 
plugins: fts-solr: solr-connection - Move lookup context data to separate struct.

5 years agoplugins: fts-solr: Move solr_lookup_xml_data() from solr-connection.c to solr-response.c.
Stephan Bosch [Tue, 8 Oct 2019 16:56:57 +0000 (18:56 +0200)] 
plugins: fts-solr: Move solr_lookup_xml_data() from solr-connection.c to solr-response.c.

5 years agoplugins: fts-solr: Move solr_lookup_xml_end() from solr-connection.c to solr-response.c.
Stephan Bosch [Tue, 8 Oct 2019 16:56:57 +0000 (18:56 +0200)] 
plugins: fts-solr: Move solr_lookup_xml_end() from solr-connection.c to solr-response.c.

5 years agoplugins: fts-solr: Move solr_lookup_add_doc() from solr-connection.c to solr-response.c.
Stephan Bosch [Tue, 8 Oct 2019 16:56:56 +0000 (18:56 +0200)] 
plugins: fts-solr: Move solr_lookup_add_doc() from solr-connection.c to solr-response.c.

5 years agoplugins: fts-solr: Move solr_result_get() from solr-connection.c to solr-response.c.
Stephan Bosch [Tue, 8 Oct 2019 16:56:55 +0000 (18:56 +0200)] 
plugins: fts-solr: Move solr_result_get() from solr-connection.c to solr-response.c.