]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
7 years agodoveadm-server: http: Removed http_request field from struct client_connection_http.
Stephan Bosch [Sat, 7 Oct 2017 15:28:04 +0000 (17:28 +0200)] 
doveadm-server: http: Removed http_request field from struct client_connection_http.

Not useful to put it there.

7 years agodoveadm-server: http: Renamed conn->http_client to conn->http_conn.
Stephan Bosch [Sat, 7 Oct 2017 15:16:22 +0000 (17:16 +0200)] 
doveadm-server: http: Renamed conn->http_client to conn->http_conn.

7 years agodoveadm-server: Restructured client-connection code so that TCP and HTTP connection...
Stephan Bosch [Sat, 7 Oct 2017 11:39:44 +0000 (13:39 +0200)] 
doveadm-server: Restructured client-connection code so that TCP and HTTP connection types are properly separated.

7 years agodoveadm-server: http: Moved client_connection_destroy_http().
Stephan Bosch [Sat, 7 Oct 2017 15:07:58 +0000 (17:07 +0200)] 
doveadm-server: http: Moved client_connection_destroy_http().

7 years agodoveadm-server: tcp: Renamed client_connection_create() to client_connection_tcp_crea...
Stephan Bosch [Sat, 7 Oct 2017 15:07:10 +0000 (17:07 +0200)] 
doveadm-server: tcp: Renamed client_connection_create() to client_connection_tcp_create().

7 years agodoveadm-server: http: Renamed client_connection_create_http() to client_connection_ht...
Stephan Bosch [Sat, 7 Oct 2017 15:06:09 +0000 (17:06 +0200)] 
doveadm-server: http: Renamed client_connection_create_http() to client_connection_http_create().

7 years agodoveadm-server: http: Renamed conn->client to conn->conn.
Stephan Bosch [Sat, 7 Oct 2017 14:30:31 +0000 (16:30 +0200)] 
doveadm-server: http: Renamed conn->client to conn->conn.

7 years agodoveadm-server: tcp: Moved client_connection_destroy().
Stephan Bosch [Sat, 7 Oct 2017 14:57:45 +0000 (16:57 +0200)] 
doveadm-server: tcp: Moved client_connection_destroy().

7 years agodoveadm-server: tcp: Cleaned up doveadm_server_log_handler().
Stephan Bosch [Sat, 7 Oct 2017 14:55:01 +0000 (16:55 +0200)] 
doveadm-server: tcp: Cleaned up doveadm_server_log_handler().

7 years agodoveadm-server: Moved common client code back from client-connection-tcp.c to client...
Stephan Bosch [Sat, 7 Oct 2017 14:48:14 +0000 (16:48 +0200)] 
doveadm-server: Moved common client code back from client-connection-tcp.c to client-connection.c.

7 years agodoveadm-server: Renamed client-connection.c to client-connection-tcp.c.
Stephan Bosch [Sat, 7 Oct 2017 13:40:45 +0000 (15:40 +0200)] 
doveadm-server: Renamed client-connection.c to client-connection-tcp.c.

Preparation for subsequent commits.

7 years agodoveadm-server: http: Changed index variables from size_t to unsigned int where size_...
Stephan Bosch [Sun, 8 Oct 2017 10:19:09 +0000 (12:19 +0200)] 
doveadm-server: http: Changed index variables from size_t to unsigned int where size_t makes no sense.

7 years agodoveadm-server: http: Changed initialization of parameters in doveadm_http_handle_jso...
Stephan Bosch [Wed, 18 Oct 2017 17:01:10 +0000 (19:01 +0200)] 
doveadm-server: http: Changed initialization of parameters in doveadm_http_handle_json_v1().

Use normal assignment, rather than memcpy().
This way, type checking is not skipped unnecessarily.

7 years agodoveadm-server: http: Use `ret' rather than `rc' as name for the local variable used...
Stephan Bosch [Sun, 8 Oct 2017 10:04:11 +0000 (12:04 +0200)] 
doveadm-server: http: Use `ret' rather than `rc' as name for the local variable used for return values.

7 years agodoveadm-server: http: Cleaned up code formatting.
Stephan Bosch [Sat, 7 Oct 2017 10:36:34 +0000 (12:36 +0200)] 
doveadm-server: http: Cleaned up code formatting.

7 years agodoveadm-server: http: Created local variable for conn->cmd_param->value.v_istream...
Stephan Bosch [Mon, 9 Oct 2017 12:38:52 +0000 (14:38 +0200)] 
doveadm-server: http: Created local variable for conn->cmd_param->value.v_istream as an abbreviation.

This is a preparation for subsequent commits.

7 years agodoveadm-server: http: Created local variable for conn->client.output as an abbreviation.
Stephan Bosch [Mon, 9 Oct 2017 11:57:27 +0000 (13:57 +0200)] 
doveadm-server: http: Created local variable for conn->client.output as an abbreviation.

This is a preparation for subsequent commits.

7 years agodoveadm-server: http: Created local variable for conn->http_request as an abbreviation.
Stephan Bosch [Mon, 9 Oct 2017 12:35:30 +0000 (14:35 +0200)] 
doveadm-server: http: Created local variable for conn->http_request as an abbreviation.

This is a preparation for subsequent commits.

7 years agodoveadm-server: http: Created local variable for conn->http_response as an abbreviation.
Stephan Bosch [Mon, 9 Oct 2017 12:13:37 +0000 (14:13 +0200)] 
doveadm-server: http: Created local variable for conn->http_response as an abbreviation.

This also makes sure it is named consistently everywhere.
This is a preparation for subsequent commits.

7 years agodoveadm-server: http: Created local variable for conn->http_server_request as an...
Stephan Bosch [Mon, 9 Oct 2017 11:43:42 +0000 (13:43 +0200)] 
doveadm-server: http: Created local variable for conn->http_server_request as an abbreviation.

This also makes sure it is named consistently everywhere.
This is a preparation for subsequent commits.

7 years agodoveadm-server: http: Moved loop body in doveadm_http_server_read_request_v1() to...
Stephan Bosch [Sat, 7 Oct 2017 10:48:38 +0000 (12:48 +0200)] 
doveadm-server: http: Moved loop body in doveadm_http_server_read_request_v1() to separate function.

7 years agodoveadm: mail: Removed redundant cur_username field from struct doveadm_mail_cmd_context.
Stephan Bosch [Tue, 10 Oct 2017 13:58:33 +0000 (15:58 +0200)] 
doveadm: mail: Removed redundant cur_username field from struct doveadm_mail_cmd_context.

7 years agodoveadm: mail: Removed redundant cur_client_ip field from struct doveadm_mail_cmd_con...
Stephan Bosch [Tue, 10 Oct 2017 17:12:52 +0000 (19:12 +0200)] 
doveadm: mail: Removed redundant cur_client_ip field from struct doveadm_mail_cmd_context.

7 years agodoveadm: mail: Removed struct doveadm_cmd_context function parameters that are now...
Stephan Bosch [Tue, 10 Oct 2017 17:04:20 +0000 (19:04 +0200)] 
doveadm: mail: Removed struct doveadm_cmd_context function parameters that are now useless.

It can be accessed from struct doveadm_mail_cmd_context.

7 years agodoveadm: Changed command contexts to contain the input, output, and connection type...
Stephan Bosch [Sat, 7 Oct 2017 19:30:27 +0000 (21:30 +0200)] 
doveadm: Changed command contexts to contain the input, output, and connection type values directly.

Before, it used a direct pointer to the connection.
It used also flags to indicate the connection type, which is now consolidated in the connection type enum.

7 years agolib-http: server: Implemented http_server_request_fail_text(), which allows creating...
Stephan Bosch [Tue, 17 Oct 2017 14:16:22 +0000 (16:16 +0200)] 
lib-http: server: Implemented http_server_request_fail_text(), which allows creating failure responses with verbose payload.

7 years agolib-http: server: Allow determining at any time whether the connection will be closed...
Stephan Bosch [Tue, 17 Oct 2017 14:04:38 +0000 (16:04 +0200)] 
lib-http: server: Allow determining at any time whether the connection will be closed after handling a request.

Previously, this was only possible during response submission, which potentially requires making a `close' parameter available for any API function that submits a (failure) response.
This would become very ugly and inflexible.

7 years agolib-http: server: Set `Connection:' header in response to `close' when request contai...
Stephan Bosch [Tue, 17 Oct 2017 14:35:06 +0000 (16:35 +0200)] 
lib-http: server: Set `Connection:' header in response to `close' when request contains the same.

Before, it would set it to `Connection: keep-alive', which makes no sense.

7 years agolib-http: server: Make sure broken connection input always causes the connection...
Stephan Bosch [Tue, 17 Oct 2017 14:28:06 +0000 (16:28 +0200)] 
lib-http: server: Make sure broken connection input always causes the connection to be closed after response.

7 years agomaildir: Fix memory leak when mailbox opening fails
Timo Sirainen [Fri, 20 Oct 2017 08:04:41 +0000 (11:04 +0300)] 
maildir: Fix memory leak when mailbox opening fails

7 years agolib-fts: Fix test-fts-filter to use valid unicode
Aki Tuomi [Mon, 23 Oct 2017 12:46:49 +0000 (15:46 +0300)] 
lib-fts: Fix test-fts-filter to use valid unicode

7 years agotest-json-parser: Use idx to better identify failing case
Aki Tuomi [Fri, 20 Oct 2017 12:15:35 +0000 (15:15 +0300)] 
test-json-parser: Use idx to better identify failing case

7 years agotest-json-parser: Update tests
Aki Tuomi [Thu, 19 Oct 2017 09:35:33 +0000 (12:35 +0300)] 
test-json-parser: Update tests

Now that we actually check for valid unicode,
the tests need to have valid unicode and invalid unicode
in correct places.

7 years agotest-unichar: Add test for surrogate handling
Aki Tuomi [Fri, 20 Oct 2017 11:10:41 +0000 (14:10 +0300)] 
test-unichar: Add test for surrogate handling

7 years agotest-unichar: Update test to conform RFC3629
Aki Tuomi [Thu, 19 Oct 2017 08:55:01 +0000 (11:55 +0300)] 
test-unichar: Update test to conform RFC3629

7 years agounichar: Do not accept invalid ranges
Aki Tuomi [Thu, 19 Oct 2017 08:54:20 +0000 (11:54 +0300)] 
unichar: Do not accept invalid ranges

As per RFC3629

7 years agojson-parser: Fix unicode parsing
Aki Tuomi [Fri, 20 Oct 2017 11:36:32 +0000 (14:36 +0300)] 
json-parser: Fix unicode parsing

Check for surrogates and validate ucs4 codepoint.

7 years agounichar: Use surrogate macros in ucs4 validity check
Aki Tuomi [Mon, 23 Oct 2017 12:03:30 +0000 (15:03 +0300)] 
unichar: Use surrogate macros in ucs4 validity check

7 years agounichar: Add surrogate handling
Aki Tuomi [Fri, 20 Oct 2017 11:10:26 +0000 (14:10 +0300)] 
unichar: Add surrogate handling

7 years agounichar: Add uni_is_valid_ucs4
Aki Tuomi [Fri, 20 Oct 2017 10:14:02 +0000 (13:14 +0300)] 
unichar: Add uni_is_valid_ucs4

7 years agolib-master: Change instances.lock settings to make it less likely to fail
Timo Sirainen [Mon, 23 Oct 2017 10:34:56 +0000 (13:34 +0300)] 
lib-master: Change instances.lock settings to make it less likely to fail

With use_io_notify it's spending less time usleep()ing. Use also a slightly
longer timeout just in case.

If a lot of instances were started at the same time, some of them could have
failed with:
master: Error: file_dotlock_open(.../instances) failed: Resource temporarily unavailable

7 years agolib-storage: Fix assert-crash when searching header and MIMEPART
Timo Sirainen [Thu, 19 Oct 2017 11:39:01 +0000 (14:39 +0300)] 
lib-storage: Fix assert-crash when searching header and MIMEPART

For now this is just a bit kludgy workaround. The proper fix requires
larger changes, which aren't worth the effort right now.

For example:
doveadm fetch -u testuser uid MAILBOX inbox FROM foo MIMEPART FILENAME CONTAINS bar BODY baz

Crashes with:
Panic: file index-mail-headers.c: line 294 (index_mail_parse_header): assertion failed: (part != NULL)

7 years agoquota-maildir: Don't deref NULL pointer on list deinit
Martti Rannanjärvi [Fri, 20 Oct 2017 04:57:17 +0000 (07:57 +0300)] 
quota-maildir: Don't deref NULL pointer on list deinit

7 years agolmtp: Fixed passing SMTP submit settings to plugins.
Stephan Bosch [Fri, 20 Oct 2017 22:36:55 +0000 (00:36 +0200)] 
lmtp: Fixed passing SMTP submit settings to plugins.

This caused Sieve to crash upon SMTP message submission; e.g., during redirect.

7 years agolib: printf_format_fix*() - Support '*' in precision
Timo Sirainen [Thu, 19 Oct 2017 10:05:41 +0000 (13:05 +0300)] 
lib: printf_format_fix*() - Support '*' in precision

We're commonly using "%.*s"

7 years agolib: printf_format_fix*() - Move minimum field width check to its own function
Timo Sirainen [Thu, 19 Oct 2017 10:02:34 +0000 (13:02 +0300)] 
lib: printf_format_fix*() - Move minimum field width check to its own function

7 years agolib: printf_format_fix*() - Use the same 4 digits as maximum precision length
Timo Sirainen [Thu, 19 Oct 2017 10:26:27 +0000 (13:26 +0300)] 
lib: printf_format_fix*() - Use the same 4 digits as maximum precision length

I forgot the precision can also be used to truncate strings, not just
specify the precision for floating point numbers. So it makes more sense
that the limit is the same as for minimum field width.

7 years agoquota-maildir: Improve error_r strings
Martti Rannanjärvi [Mon, 16 Oct 2017 12:55:16 +0000 (15:55 +0300)] 
quota-maildir: Improve error_r strings

7 years agoquota-fs: Improve error_r strings
Martti Rannanjärvi [Mon, 16 Oct 2017 11:50:34 +0000 (14:50 +0300)] 
quota-fs: Improve error_r strings

7 years agoquota-dirsize: Improve error_r strings
Martti Rannanjärvi [Tue, 17 Oct 2017 07:26:41 +0000 (10:26 +0300)] 
quota-dirsize: Improve error_r strings

7 years agoquota-dict: Improve error_r strings
Martti Rannanjärvi [Mon, 16 Oct 2017 11:05:00 +0000 (14:05 +0300)] 
quota-dict: Improve error_r strings

7 years agoquota-count: Improve error_r strings
Martti Rannanjärvi [Tue, 17 Oct 2017 08:57:29 +0000 (11:57 +0300)] 
quota-count: Improve error_r strings

7 years agoquota-imapc: Improve error_r strings
Martti Rannanjärvi [Mon, 16 Oct 2017 06:58:24 +0000 (09:58 +0300)] 
quota-imapc: Improve error_r strings

7 years agoquota: Add error_r to update() of quota_backend_vfuncs
Martti Rannanjärvi [Mon, 16 Oct 2017 09:38:32 +0000 (12:38 +0300)] 
quota: Add error_r to update() of quota_backend_vfuncs

7 years agoquota: Add error_r to get_resource() of quota_backend_vfuncs
Martti Rannanjärvi [Tue, 17 Oct 2017 07:12:48 +0000 (10:12 +0300)] 
quota: Add error_r to get_resource() of quota_backend_vfuncs

7 years agoquota: Add error_r parameter to init_limits() of quota_backend_vfuncs
Martti Rannanjärvi [Mon, 16 Oct 2017 09:18:53 +0000 (12:18 +0300)] 
quota: Add error_r parameter to init_limits() of quota_backend_vfuncs

7 years agoquota: Add error_r to quota_get_resource()
Martti Rannanjärvi [Wed, 20 Sep 2017 06:31:40 +0000 (09:31 +0300)] 
quota: Add error_r to quota_get_resource()

7 years agoquota: Add error_r to quota_transaction_set_limits()
Martti Rannanjärvi [Fri, 6 Oct 2017 20:45:41 +0000 (23:45 +0300)] 
quota: Add error_r to quota_transaction_set_limits()

7 years agoquota: Add error string to quota_set_storage_error()
Martti Rannanjärvi [Wed, 20 Sep 2017 05:18:11 +0000 (08:18 +0300)] 
quota: Add error string to quota_set_storage_error()

7 years agoquota: Add error_r to quota_settings->test_alloc()
Martti Rannanjärvi [Fri, 6 Oct 2017 20:35:34 +0000 (23:35 +0300)] 
quota: Add error_r to quota_settings->test_alloc()

7 years agoquota-maildir: Remove T_BEGIN..T_END blocks
Martti Rannanjärvi [Mon, 16 Oct 2017 19:52:59 +0000 (22:52 +0300)] 
quota-maildir: Remove T_BEGIN..T_END blocks

This is to enable using t_strdup_printf() with error_r later on.

7 years agoquota-fs: Remove T_BEGIN..T_END from fs_quota_get_resource()
Martti Rannanjärvi [Mon, 16 Oct 2017 19:50:11 +0000 (22:50 +0300)] 
quota-fs: Remove T_BEGIN..T_END from fs_quota_get_resource()

This is to enable using t_strdup_printf() with error_r later on.

7 years agoquota-dirsize: Remove T_BEGIN..T_END from dirsize_quota_get_resource()
Martti Rannanjärvi [Mon, 16 Oct 2017 19:47:14 +0000 (22:47 +0300)] 
quota-dirsize: Remove T_BEGIN..T_END from dirsize_quota_get_resource()

This is to enable using t_strdup_printf() with error_r later on.

7 years agoquota-dict: Remove T_BEGIN..T_END blocks
Martti Rannanjärvi [Mon, 16 Oct 2017 19:35:31 +0000 (22:35 +0300)] 
quota-dict: Remove T_BEGIN..T_END blocks

This is to enable using t_strdup_printf() with error_r later on.

7 years agoquota: Initialize quota_backends with designated initializers
Martti Rannanjärvi [Tue, 17 Oct 2017 13:05:47 +0000 (16:05 +0300)] 
quota: Initialize quota_backends with designated initializers

7 years agoauth: Fix %{ldap_dn} not to leak memory
Timo Sirainen [Thu, 19 Oct 2017 12:39:28 +0000 (15:39 +0300)] 
auth: Fix %{ldap_dn} not to leak memory

7 years agoacl: Don't deref a potentially uninitialized pointer in acl_global_file_read
Martti Rannanjärvi [Thu, 19 Oct 2017 09:28:38 +0000 (12:28 +0300)] 
acl: Don't deref a potentially uninitialized pointer in acl_global_file_read

7 years agolib: printf_format_fix*() - Be over-strict in what format strings are allowed
Timo Sirainen [Tue, 17 Oct 2017 14:39:32 +0000 (17:39 +0300)] 
lib: printf_format_fix*() - Be over-strict in what format strings are allowed

The checks could have been bypassed by some invalid format strings that were
handled differently by the printf_format_fix*() code and libc. For example
"%**%n" was passed through as ok, but glibc handled the %n in it.

Found by cPanel Security Team.

7 years agolibpassword: Add unit tests
Aki Tuomi [Mon, 16 Oct 2017 15:40:38 +0000 (18:40 +0300)] 
libpassword: Add unit tests

7 years agoauth: Fix compiling crypt-blowfish with i386
Timo Sirainen [Mon, 16 Oct 2017 13:42:43 +0000 (16:42 +0300)] 
auth: Fix compiling crypt-blowfish with i386

We're not going to support any assembly code, so remove BF_ASM entirely.

7 years agodoveadm-server: http: Fixed lingering connections after the request is sent.
Stephan Bosch [Tue, 17 Oct 2017 01:19:19 +0000 (03:19 +0200)] 
doveadm-server: http: Fixed lingering connections after the request is sent.

Turns out conn->http_client is already NULL while doveadm_http_server_connection_destroy() is called.
This is because http_server_connection_unref() sets it to NULL;
Fixed by removing useless HTTP connection reference.

7 years agocassandra: Support "timestamp" type fields properly
Timo Sirainen [Mon, 16 Oct 2017 12:41:56 +0000 (15:41 +0300)] 
cassandra: Support "timestamp" type fields properly

Fixes setting them with prepared statements. Reading them never worked
earlier.

7 years agocassandra: Include "prepared" when logging about prepared statement queries
Timo Sirainen [Mon, 16 Oct 2017 12:12:12 +0000 (15:12 +0300)] 
cassandra: Include "prepared" when logging about prepared statement queries

Mainly useful for debugging/testing.

7 years agocassandra: Fix using bigint types with unprepared statements
Timo Sirainen [Mon, 16 Oct 2017 11:49:56 +0000 (14:49 +0300)] 
cassandra: Fix using bigint types with unprepared statements

This reverts the code to not using the statements with binding at all.
Alternative fix would be to start using explicit int32 or int64 parameter
types, but that breaks backwards compatibility a bit.

7 years agolibpassword: Deinitialize hash iterator in password_scheme_detect
Aki Tuomi [Mon, 16 Oct 2017 15:39:14 +0000 (18:39 +0300)] 
libpassword: Deinitialize hash iterator in password_scheme_detect

Otherwise it will leak memory

7 years agoipc: Improve error logging when IPC server is disconnected
Timo Sirainen [Tue, 22 Aug 2017 13:29:25 +0000 (16:29 +0300)] 
ipc: Improve error logging when IPC server is disconnected

7 years agolib-dict-backend: Fix linking test-dict-sql
Timo Sirainen [Mon, 16 Oct 2017 10:34:35 +0000 (13:34 +0300)] 
lib-dict-backend: Fix linking test-dict-sql

dict_drivers_register_builtin() wasn't found.

7 years agolibpassword: Add BLF-CRYPT support independent of crypt
Aki Tuomi [Tue, 10 Oct 2017 12:04:28 +0000 (15:04 +0300)] 
libpassword: Add BLF-CRYPT support independent of crypt

7 years agoauth: Fix typo in blowfish name
Aki Tuomi [Tue, 10 Oct 2017 11:24:44 +0000 (14:24 +0300)] 
auth: Fix typo in blowfish name

7 years agolib-fs: Fix fs_wrapper_write_stream_finish() to work with async parent fs
Timo Sirainen [Mon, 16 Oct 2017 10:53:58 +0000 (13:53 +0300)] 
lib-fs: Fix fs_wrapper_write_stream_finish() to work with async parent fs

This only became a problem with the previous fs-compress change.

7 years agologin-common: Use HAproxy provided proxy.ssl information
Aki Tuomi [Mon, 18 Sep 2017 12:27:38 +0000 (15:27 +0300)] 
login-common: Use HAproxy provided proxy.ssl information

If the connection is proxied via system that can terminate
ssl for us, such as HAproxy, use that information only.

7 years agolib-master: Support HAproxy TLVs
Aki Tuomi [Mon, 18 Sep 2017 12:25:21 +0000 (15:25 +0300)] 
lib-master: Support HAproxy TLVs

This allows passing in information about SSL and client
certificate(s) and other information from haproxy.

7 years agolib-master: Use pooled memory for haproxy
Aki Tuomi [Tue, 3 Oct 2017 08:15:54 +0000 (11:15 +0300)] 
lib-master: Use pooled memory for haproxy

7 years agolib-master: Fix haproxy reading code to read data incrementally
Aki Tuomi [Mon, 18 Sep 2017 12:21:04 +0000 (15:21 +0300)] 
lib-master: Fix haproxy reading code to read data incrementally

7 years agolibpassword: Add support for ARGON2 scheme
Aki Tuomi [Tue, 10 Oct 2017 14:58:03 +0000 (17:58 +0300)] 
libpassword: Add support for ARGON2 scheme

7 years agoconfigure: Detect libsodium presence
Aki Tuomi [Tue, 10 Oct 2017 12:24:17 +0000 (15:24 +0300)] 
configure: Detect libsodium presence

7 years agoacl plugin: avoid "'struct stat' declared inside parameter list" warning
Josef 'Jeff' Sipek [Wed, 11 Oct 2017 20:33:57 +0000 (16:33 -0400)] 
acl plugin: avoid "'struct stat' declared inside parameter list" warning

7 years agofs-compress: Allow compress level 0 to skip compression
Timo Sirainen [Fri, 13 Oct 2017 09:34:01 +0000 (12:34 +0300)] 
fs-compress: Allow compress level 0 to skip compression

This can be useful when combined with the "maybe-" prefix, so Dovecot will
support reading compressed files without creating new ones.

7 years agoAdded "ULL" to the hex literals that needed it.
Bill Cole [Tue, 10 Oct 2017 21:40:04 +0000 (17:40 -0400)] 
Added "ULL" to the hex literals that needed it.

On 32-bit platforms with older compilers (e.g. gcc 4.2 on MacOS 10.6
running on a 1st-gen Core Duo) a 'long' is 4 bytes and the compiler does
not automatically use a 'long long' when needed, but instead generates
an error. e.g.:

libtool: compile:  /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I. -I../../.. -I../../../src/lib -I../../../src/lib-mail -I../../../src/lib-index -I../../../src/lib-storage -I../../../src/plugins/fts -I../../../src/doveadm -I/opt/local/include/openssl -I/opt/local/include -I/opt/local/include/CLucene/ext -pipe -Os -arch i386 -D__STDC_LIMIT_MACROS -MT lucene-wrapper.lo -MD -MP -MF .deps/lucene-wrapper.Tpo -c lucene-wrapper.cc  -fno-common -DPIC -o .libs/lucene-wrapper.o
In file included from ../../../src/lib/lib.h:33,
                 from lucene-wrapper.cc:4:
../../../src/lib/byteorder.h:94: error: integer constant is too large for ‘long’ type
../../../src/lib/byteorder.h:95: error: integer constant is too large for ‘long’ type
../../../src/lib/byteorder.h:96: error: integer constant is too large for ‘long’ type
../../../src/lib/byteorder.h:97: error: integer constant is too large for ‘long’ type
make[4]: *** [lucene-wrapper.lo] Error 1

Adding the 'ULL' to the end of the 16-digit hex literals that are used
to test the structure of 64-bit integers fixes this and avoids any
problem which could arise from the compiler using a 32-bit type for
those literals that could fit in 32 bites.

7 years agodoveadm proxy: Don't crash if remote doesn't support log proxying
Timo Sirainen [Sat, 14 Oct 2017 09:54:18 +0000 (12:54 +0300)] 
doveadm proxy: Don't crash if remote doesn't support log proxying

7 years agolib-storage: Add settings to configure lib-index optimization parameters
Timo Sirainen [Mon, 9 Oct 2017 13:37:08 +0000 (16:37 +0300)] 
lib-storage: Add settings to configure lib-index optimization parameters

The defaults are expected to be pretty good, but these settings make it
easier to test whether other values might be more optimal.

7 years agolib-index: Add mail_index_cache_optimization_settings
Timo Sirainen [Mon, 9 Oct 2017 12:37:51 +0000 (15:37 +0300)] 
lib-index: Add mail_index_cache_optimization_settings

7 years agolib-index: Add mail_index_base_optimization_settings
Timo Sirainen [Mon, 9 Oct 2017 12:24:45 +0000 (15:24 +0300)] 
lib-index: Add mail_index_base_optimization_settings

7 years agolib-index: Replace mail_index_set_log_rotation() with mail_index_set_optimization_set...
Timo Sirainen [Mon, 9 Oct 2017 12:15:08 +0000 (15:15 +0300)] 
lib-index: Replace mail_index_set_log_rotation() with mail_index_set_optimization_settings()

This allows more easily adding optimization-related settings.

7 years agolib-dict: Remove test_dict_sql
Aki Tuomi [Wed, 11 Oct 2017 09:42:11 +0000 (12:42 +0300)] 
lib-dict: Remove test_dict_sql

It got accidentically added in 149299c7

7 years agolib-master: Allow a second log initialization after settings have been read.
Timo Sirainen [Wed, 11 Oct 2017 10:03:51 +0000 (13:03 +0300)] 
lib-master: Allow a second log initialization after settings have been read.

This fixes logging with services that bypass the log service (lda or -L
parameter).

7 years agofs-compress: Support reading uncompressed input by prefixing compression format with...
Timo Sirainen [Fri, 6 Oct 2017 15:33:24 +0000 (18:33 +0300)] 
fs-compress: Support reading uncompressed input by prefixing compression format with "maybe-"

7 years agolib: Add istream-try
Timo Sirainen [Fri, 6 Oct 2017 15:31:12 +0000 (18:31 +0300)] 
lib: Add istream-try

This can be used to automatically detect the underlying istream format from
a given list of choices.

7 years agolib: io_stream_set_error() - Allow one of the parameters to be the old error
Timo Sirainen [Mon, 9 Oct 2017 15:31:52 +0000 (18:31 +0300)] 
lib: io_stream_set_error() - Allow one of the parameters to be the old error

7 years agoglobal: Use check-local in Makefile.am instead of overriding check directly
Timo Sirainen [Wed, 4 Oct 2017 18:45:18 +0000 (21:45 +0300)] 
global: Use check-local in Makefile.am instead of overriding check directly

This helps with dependency problems, like running "make check" in
lib-storage without "make" first would try to compile the test programs
too early and fail.