]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
6 years agodriver-sqlite: Fix crash and event leak in driver_sqlite_query_s()
Martti Rannanjärvi [Tue, 11 Sep 2018 08:21:36 +0000 (11:21 +0300)] 
driver-sqlite: Fix crash and event leak in driver_sqlite_query_s()

6 years agodriver-sqlite: Assign db in driver_sqlite_exec()
Martti Rannanjärvi [Mon, 10 Sep 2018 09:19:29 +0000 (12:19 +0300)] 
driver-sqlite: Assign db in driver_sqlite_exec()

This fixes a crash.

6 years agolib-sql: Fix wrong sql_query_finished_event() success parameter use
Martti Rannanjärvi [Thu, 13 Sep 2018 10:01:52 +0000 (13:01 +0300)] 
lib-sql: Fix wrong sql_query_finished_event() success parameter use

6 years agodriver-sqlite: Don't give false out of memory errors
Martti Rannanjärvi [Thu, 13 Sep 2018 09:36:20 +0000 (12:36 +0300)] 
driver-sqlite: Don't give false out of memory errors

Only log error from sqlite3_errmsg() when connected to the db, since
otherwise dovecot logs false "out of memory" errors.

6 years agodriver-sqlite: Add error to sql_query_finished event on error
Aki Tuomi [Wed, 12 Sep 2018 07:19:16 +0000 (10:19 +0300)] 
driver-sqlite: Add error to sql_query_finished event on error

6 years agodriver-pgsql: Add error to sql_query_finished if it fails
Aki Tuomi [Wed, 12 Sep 2018 07:18:48 +0000 (10:18 +0300)] 
driver-pgsql: Add error to sql_query_finished if it fails

6 years agodriver-cassandra: Add error to sql_query_finished event on error
Aki Tuomi [Wed, 12 Sep 2018 07:17:49 +0000 (10:17 +0300)] 
driver-cassandra: Add error to sql_query_finished event on error

6 years agolib-sql: Do not create event for old drivers
Aki Tuomi [Wed, 5 Sep 2018 10:20:02 +0000 (13:20 +0300)] 
lib-sql: Do not create event for old drivers

They can't use it anyways

6 years agodriver-sqlpool: Only strdup error on error
Aki Tuomi [Wed, 5 Sep 2018 05:34:28 +0000 (08:34 +0300)] 
driver-sqlpool: Only strdup error on error

Satisfies static analyzers

6 years agodriver-sqlite: Document why rollback is called when commit fails
Aki Tuomi [Tue, 4 Sep 2018 17:30:12 +0000 (20:30 +0300)] 
driver-sqlite: Document why rollback is called when commit fails

6 years agodriver-cassandra: Add events
Aki Tuomi [Sun, 2 Sep 2018 16:14:17 +0000 (19:14 +0300)] 
driver-cassandra: Add events

6 years agodriver-pgsql: Add events
Aki Tuomi [Sat, 1 Sep 2018 10:50:27 +0000 (13:50 +0300)] 
driver-pgsql: Add events

6 years agodriver-sqlite: Add events
Aki Tuomi [Fri, 31 Aug 2018 10:30:11 +0000 (13:30 +0300)] 
driver-sqlite: Add events

6 years agodriver-mysql: Add events
Aki Tuomi [Fri, 31 Aug 2018 06:45:59 +0000 (09:45 +0300)] 
driver-mysql: Add events

6 years agodriver-sqlpool: Add events
Aki Tuomi [Fri, 31 Aug 2018 06:31:48 +0000 (09:31 +0300)] 
driver-sqlpool: Add events

6 years agolib-sql: Add events
Aki Tuomi [Thu, 30 Aug 2018 11:23:10 +0000 (14:23 +0300)] 
lib-sql: Add events

6 years agoauth: Use sql_init_full
Aki Tuomi [Mon, 3 Sep 2018 10:59:41 +0000 (13:59 +0300)] 
auth: Use sql_init_full

6 years agoglobal: Replace sql_db_cache_new with sql_db_cache_new2
Aki Tuomi [Tue, 4 Sep 2018 06:31:25 +0000 (09:31 +0300)] 
global: Replace sql_db_cache_new with sql_db_cache_new2

6 years agodict-sql: Use sql_db_cache_new2
Aki Tuomi [Mon, 3 Sep 2018 11:13:55 +0000 (14:13 +0300)] 
dict-sql: Use sql_db_cache_new2

6 years agolib-sql: Add sql_db_cache_new2 that uses the new sql_init_full initializer
Aki Tuomi [Mon, 3 Sep 2018 11:12:05 +0000 (14:12 +0300)] 
lib-sql: Add sql_db_cache_new2 that uses the new sql_init_full initializer

6 years agodriver-cassandra: Add init_full
Aki Tuomi [Sun, 2 Sep 2018 15:45:14 +0000 (18:45 +0300)] 
driver-cassandra: Add init_full

6 years agodriver-cassandra: Return error from connection string parser
Aki Tuomi [Sun, 2 Sep 2018 15:39:47 +0000 (18:39 +0300)] 
driver-cassandra: Return error from connection string parser

6 years agodriver-cassandra: Add driver_cassandra_free
Aki Tuomi [Tue, 4 Sep 2018 06:43:32 +0000 (09:43 +0300)] 
driver-cassandra: Add driver_cassandra_free

6 years agodriver-pgsql: Add init_full
Aki Tuomi [Sat, 1 Sep 2018 10:43:19 +0000 (13:43 +0300)] 
driver-pgsql: Add init_full

6 years agodriver-pgsql: Add driver_pgsql_free
Aki Tuomi [Tue, 4 Sep 2018 06:39:06 +0000 (09:39 +0300)] 
driver-pgsql: Add driver_pgsql_free

6 years agodriver-sqlite: Add init_full
Aki Tuomi [Fri, 31 Aug 2018 10:29:56 +0000 (13:29 +0300)] 
driver-sqlite: Add init_full

6 years agodriver-mysql: Add init_full
Aki Tuomi [Mon, 3 Sep 2018 09:17:40 +0000 (12:17 +0300)] 
driver-mysql: Add init_full

6 years agodriver-mysql: Allocate mysql connection ourselves
Aki Tuomi [Fri, 31 Aug 2018 11:07:44 +0000 (14:07 +0300)] 
driver-mysql: Allocate mysql connection ourselves

This allows reusing the same mysql object on reconnect,
and simplifies cleanup in case initialization fails.

6 years agodriver-mysql: Return error in connection string parser
Aki Tuomi [Mon, 3 Sep 2018 09:15:55 +0000 (12:15 +0300)] 
driver-mysql: Return error in connection string parser

6 years agodriver-sqlpool: Add driver_sqlpool_init_full
Aki Tuomi [Thu, 30 Aug 2018 11:17:13 +0000 (14:17 +0300)] 
driver-sqlpool: Add driver_sqlpool_init_full

Needed by SQL API change

6 years agodriver-sqlpool: Use init_full when available
Aki Tuomi [Fri, 31 Aug 2018 09:43:11 +0000 (12:43 +0300)] 
driver-sqlpool: Use init_full when available

6 years agolib-sql: Add init_full vfunction
Aki Tuomi [Thu, 30 Aug 2018 11:18:41 +0000 (14:18 +0300)] 
lib-sql: Add init_full vfunction

6 years agodriver-sqlite: Whitespace fix
Aki Tuomi [Fri, 31 Aug 2018 10:07:03 +0000 (13:07 +0300)] 
driver-sqlite: Whitespace fix

6 years agoauth: Add db_ prefix to sql in db-sql
Aki Tuomi [Fri, 31 Aug 2018 06:20:16 +0000 (09:20 +0300)] 
auth: Add db_ prefix to sql in db-sql

Prevents clash with lib-sql

6 years agoutil: Fix compile with tcpwrap
Martti Rannanjärvi [Tue, 11 Sep 2018 08:42:46 +0000 (11:42 +0300)] 
util: Fix compile with tcpwrap

6 years agostats: Wait for clients to disconnect at shutdown
Timo Sirainen [Fri, 7 Sep 2018 08:19:43 +0000 (11:19 +0300)] 
stats: Wait for clients to disconnect at shutdown

6 years agoglobal: Replace MASTER_SERVICE_FLAG_SEND_STATS with _DONT_SEND_STATS
Timo Sirainen [Thu, 6 Sep 2018 14:04:00 +0000 (17:04 +0300)] 
global: Replace MASTER_SERVICE_FLAG_SEND_STATS with _DONT_SEND_STATS

Most services want to send statistics, so it's better to reverse the flag
behavior. Mark the few services that don't want stats with
MASTER_SERVICE_FLAG_DONT_SEND_STATS.

6 years agomaster: Start service processes only after adding all service listeners
Timo Sirainen [Thu, 6 Sep 2018 16:48:09 +0000 (19:48 +0300)] 
master: Start service processes only after adding all service listeners

Otherwise the processes could try to connect to services that aren't being
listened on, causing errors. Especially stats-writer socket needs to be
available early on.

6 years agolib: Test event category parent matching
Martti Rannanjärvi [Wed, 5 Sep 2018 09:25:56 +0000 (12:25 +0300)] 
lib: Test event category parent matching

6 years agolib: Fix matching parent categories in event filter
Timo Sirainen [Fri, 31 Aug 2018 10:04:53 +0000 (13:04 +0300)] 
lib: Fix matching parent categories in event filter

So far this hasn't caused problems, because parent events had been using
parent categories. However, if the parent category wasn't used by an event
or its parents, an event filter wouldn't have matched it.

6 years agolib-master, master: Initialize stats-client via environment variables
Timo Sirainen [Wed, 29 Aug 2018 19:09:57 +0000 (22:09 +0300)] 
lib-master, master: Initialize stats-client via environment variables

That way it's initialized before settings are read, and it can catch events
earlier. It also doesn't require all services to read settings if they
otherwise don't need them.

6 years agodns: Fix duration field in dns_worker_request_finished event
Timo Sirainen [Wed, 29 Aug 2018 17:43:22 +0000 (20:43 +0300)] 
dns: Fix duration field in dns_worker_request_finished event

6 years agolib-dns - struct member cleanup in dns_lookup
Phil Carmody [Wed, 29 Aug 2018 12:15:30 +0000 (15:15 +0300)] 
lib-dns - struct member cleanup in dns_lookup

The index was never used anyway. Now we're using an alloconly pool,
there's no need for the dns_lookup to keep a freeable pointer to the
fields also int result.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-http: test-http-client-errors - Skip VERSION line in DNS reply
Aki Tuomi [Tue, 28 Aug 2018 06:45:58 +0000 (09:45 +0300)] 
lib-http: test-http-client-errors - Skip VERSION line in DNS reply

Otherwise we send extraneous results causing SIGPIPE crash.

Broken in ddb9ead03f4cc7a2c61094e50803e07dfd590cb5

6 years agolib-dns: Always use dns_lookup_free
Aki Tuomi [Mon, 27 Aug 2018 11:16:46 +0000 (14:16 +0300)] 
lib-dns: Always use dns_lookup_free

Ensures that all resources get free'd in single place,
Fixes memory leak and event double-unref.

Broken in 9ee82e3f660e6e072532283cad8668a578ac137d

6 years agolib-dns: Always allocate lookup
Aki Tuomi [Mon, 27 Aug 2018 11:15:54 +0000 (14:15 +0300)] 
lib-dns: Always allocate lookup

Simplifies next change

6 years agolib-dns: Use pooled memory with dns lookups
Aki Tuomi [Mon, 27 Aug 2018 11:14:50 +0000 (14:14 +0300)] 
lib-dns: Use pooled memory with dns lookups

Simplifies memory management

6 years agolib-dns: Remove useless code
Aki Tuomi [Fri, 24 Aug 2018 08:42:56 +0000 (11:42 +0300)] 
lib-dns: Remove useless code

Found by scan-build

6 years agolib-http: Hook lib-http event to connection event
Aki Tuomi [Fri, 17 Aug 2018 11:27:52 +0000 (14:27 +0300)] 
lib-http: Hook lib-http event to connection event

6 years agodns, lib-dns: Move to protocol v1.0
Aki Tuomi [Fri, 17 Aug 2018 08:33:18 +0000 (11:33 +0300)] 
dns, lib-dns: Move to protocol v1.0

6 years agodns: Add event support
Aki Tuomi [Tue, 31 Jul 2018 09:51:54 +0000 (12:51 +0300)] 
dns: Add event support

6 years agodns: Use connection.c
Aki Tuomi [Thu, 16 Aug 2018 07:32:38 +0000 (10:32 +0300)] 
dns: Use connection.c

This enables processing multiple requests at a time.

6 years agolib: connection - Add and fix logging
Aki Tuomi [Thu, 2 Aug 2018 14:22:51 +0000 (17:22 +0300)] 
lib: connection - Add and fix logging

6 years agolib: connection - Add event support
Aki Tuomi [Thu, 2 Aug 2018 14:22:37 +0000 (17:22 +0300)] 
lib: connection - Add event support

6 years agolib-dns: Add event support
Aki Tuomi [Tue, 31 Jul 2018 09:52:19 +0000 (12:52 +0300)] 
lib-dns: Add event support

6 years agolib-dns: Move calling callback to separate function
Aki Tuomi [Tue, 31 Jul 2018 09:45:17 +0000 (12:45 +0300)] 
lib-dns: Move calling callback to separate function

Simplifies next commit

6 years agolib-dns: Initialize lookup earlier
Aki Tuomi [Fri, 17 Aug 2018 11:36:13 +0000 (14:36 +0300)] 
lib-dns: Initialize lookup earlier

6 years agolib-dns: Compose final command in dns_client_lookup_common
Aki Tuomi [Fri, 17 Aug 2018 07:55:39 +0000 (10:55 +0300)] 
lib-dns: Compose final command in dns_client_lookup_common

Makes logging easier

6 years agolib-dns: Use connection with dns-client
Aki Tuomi [Thu, 16 Aug 2018 12:24:30 +0000 (15:24 +0300)] 
lib-dns: Use connection with dns-client

6 years agolib: lib-event - Add inc_int to passthrough events
Aki Tuomi [Fri, 17 Aug 2018 07:39:05 +0000 (10:39 +0300)] 
lib: lib-event - Add inc_int to passthrough events

Was forgotten in 12927b843387b2a93fcf1d2e05df7c79af06e567

6 years agolib: Make io_loop_move_*(NULL) no-op
Aki Tuomi [Thu, 23 Aug 2018 11:58:44 +0000 (14:58 +0300)] 
lib: Make io_loop_move_*(NULL) no-op

6 years agolib: Use i_asserts() for NULL-checks in test_event_filter_inc_int()
Martti Rannanjärvi [Tue, 28 Aug 2018 09:00:54 +0000 (12:00 +0300)] 
lib: Use i_asserts() for NULL-checks in test_event_filter_inc_int()

This is so scan-build doesn't explore the assertations not holding and
create noise with that.

6 years agolib: Add test for event_inc_int()
Martti Rannanjärvi [Mon, 27 Aug 2018 11:36:33 +0000 (14:36 +0300)] 
lib: Add test for event_inc_int()

6 years agolib: test-event-filter - Test overriding parent fields
Timo Sirainen [Thu, 16 Aug 2018 09:27:06 +0000 (12:27 +0300)] 
lib: test-event-filter - Test overriding parent fields

6 years agolib: Add event_field_clear() to allow clearing parent event's fields
Timo Sirainen [Thu, 16 Aug 2018 09:17:38 +0000 (12:17 +0300)] 
lib: Add event_field_clear() to allow clearing parent event's fields

6 years agolib: Add event_inc_int()
Timo Sirainen [Wed, 15 Aug 2018 13:33:49 +0000 (16:33 +0300)] 
lib: Add event_inc_int()

This can be useful when updating counter fields.

6 years agolib: Add test for stats_dist_get_variance()
Martti Rannanjärvi [Tue, 31 Jul 2018 05:23:49 +0000 (08:23 +0300)] 
lib: Add test for stats_dist_get_variance()

6 years agolib,stats,dict: Make stats_dist_get_avg() return double
Martti Rannanjärvi [Mon, 20 Aug 2018 10:56:40 +0000 (13:56 +0300)] 
lib,stats,dict: Make stats_dist_get_avg() return double

6 years agoman, doveadm: Rename "mailbox cache compress" to "mailbox cache purge"
Timo Sirainen [Tue, 11 Sep 2018 07:10:13 +0000 (10:10 +0300)] 
man, doveadm: Rename "mailbox cache compress" to "mailbox cache purge"

The "compress" word makes it sound like e.g. zlib compression. The "purge"
word is used for a similar behavior with mdbox purging.

6 years agodoveadm: Add mailbox cache compress
Timo Sirainen [Sun, 29 Apr 2018 10:45:05 +0000 (13:45 +0300)] 
doveadm: Add mailbox cache compress

6 years agolib-index: Add mail_cache_compress_forced()
Timo Sirainen [Sun, 29 Apr 2018 10:44:59 +0000 (13:44 +0300)] 
lib-index: Add mail_cache_compress_forced()

6 years agodoveadm-auth-server: Fix cmd_list output to use JSON
Aki Tuomi [Wed, 19 Sep 2018 09:34:57 +0000 (12:34 +0300)] 
doveadm-auth-server: Fix cmd_list output to use JSON

Fixes output for HTTP client

6 years agodoveadm-auth-server: Do not use i_fatal on user listing error
Aki Tuomi [Wed, 19 Sep 2018 09:27:50 +0000 (12:27 +0300)] 
doveadm-auth-server: Do not use i_fatal on user listing error

Breaks error reporting to HTTP client

6 years agodict-client: Avoid excessive CPU usage while waiting commands to finish
Timo Sirainen [Fri, 14 Sep 2018 10:19:16 +0000 (13:19 +0300)] 
dict-client: Avoid excessive CPU usage while waiting commands to finish

client_dict_add_timeout() adds the timeout thinking that the dict no longer
has any work to do, so it can be freed soon. However, if other work is
added before that, the timeout just keeps getting called over and over
again. This is especially bad with the default idle timeout of 0.

6 years agologin-proxy: Fix logging reason when kicking non-logged in connections
Timo Sirainen [Fri, 6 Jul 2018 10:12:51 +0000 (13:12 +0300)] 
login-proxy: Fix logging reason when kicking non-logged in connections

Use the same reason as for logged in connections.

6 years agoimap: Fix command ambiguity checking with special plugins
Timo Sirainen [Mon, 6 Aug 2018 09:39:25 +0000 (12:39 +0300)] 
imap: Fix command ambiguity checking with special plugins

If the tagged line is already sent, that command can't result in ambiguity
anymore.

A cleaner fix would be to add a new _WAIT_SYNC_OUTPUT state, but that
requires all the existing code to understand that new state correctly, so it
has a higher chance of breaking something. So at least for now don't add it.

6 years agolib-http: test-http-client-errors: Address another reliability issue in "peer reuse...
Stephan Bosch [Thu, 13 Sep 2018 07:16:41 +0000 (09:16 +0200)] 
lib-http: test-http-client-errors: Address another reliability issue in "peer reuse failure" test.

6 years agolib-http: response: Add convenience functions for status evaluation.
Stephan Bosch [Thu, 13 Sep 2018 18:44:22 +0000 (20:44 +0200)] 
lib-http: response: Add convenience functions for status evaluation.

6 years agolib-http: test-http-client-errors: Make "peer reuse failure" test reliable.
Stephan Bosch [Mon, 13 Aug 2018 17:23:31 +0000 (19:23 +0200)] 
lib-http: test-http-client-errors: Make "peer reuse failure" test reliable.

It was highly timing-sensitive, since it required a particular error status to
be returned. Sometimes, it would yield a different error based on a
slightly different order of events, making the test fail. Such failures aren't
relevant though, since this regression test is about triggering a segfault that
used to occur.

6 years agoauth: mycrypt - include crypt.h
Aki Tuomi [Wed, 8 Aug 2018 09:33:20 +0000 (12:33 +0300)] 
auth: mycrypt - include crypt.h

Fixes crypt usage on glibc-2.28

Reported by Reuben Farrelly
Patch provided by Thore Bödecker

6 years agolib-master: ipc-client: Don't free command too early
Timo Sirainen [Tue, 2 Oct 2018 07:22:11 +0000 (10:22 +0300)] 
lib-master: ipc-client: Don't free command too early

When multiple replies were received by IPC only the final reply should free
the command. This may have caused e.g. "doveadm proxy list" to crash.
Broken by 435f0545b200767c25a5daee17cd6b4998d03710

6 years agodirector: Allow fully freeing user while waiting for IPC kick to finish
Timo Sirainen [Thu, 5 Jul 2018 11:55:38 +0000 (14:55 +0300)] 
director: Allow fully freeing user while waiting for IPC kick to finish

director_user_move_free() will now just free the IPC command, so this isn't
a problem anymore.

6 years agodirector: Fix crash when user kill times out before IPC finishes
Timo Sirainen [Thu, 5 Jul 2018 11:53:02 +0000 (14:53 +0300)] 
director: Fix crash when user kill times out before IPC finishes

Abort the IPC kick command when freeing kill context so the IPC callback
won't be called.

6 years agolib-master: ipc-client: Support aborting commands
Timo Sirainen [Thu, 5 Jul 2018 11:42:30 +0000 (14:42 +0300)] 
lib-master: ipc-client: Support aborting commands

6 years agolib-master: ipc-client: Cleanup - avoid extra return in the function
Timo Sirainen [Thu, 5 Jul 2018 11:41:38 +0000 (14:41 +0300)] 
lib-master: ipc-client: Cleanup - avoid extra return in the function

Simplifies the following commit.

6 years agolib-master: ipc-client: Never call callback directly from ipc_client_cmd()
Timo Sirainen [Thu, 5 Jul 2018 11:38:51 +0000 (14:38 +0300)] 
lib-master: ipc-client: Never call callback directly from ipc_client_cmd()

This may simplify the calling code, especially after the following commit
that returns the command pointer.

6 years agolib-master: ipc-client: Split code to ipc_client_abort_commands()
Timo Sirainen [Thu, 5 Jul 2018 11:35:51 +0000 (14:35 +0300)] 
lib-master: ipc-client: Split code to ipc_client_abort_commands()

6 years agolib-master: ipc-client: Use linked list of commads instead of array
Timo Sirainen [Thu, 5 Jul 2018 11:25:46 +0000 (14:25 +0300)] 
lib-master: ipc-client: Use linked list of commads instead of array

Needed for the following commit that returns the command pointer.

6 years agolib-master: ipc-client: Don't call callback twice if IPC proxy sends invalid input
Timo Sirainen [Thu, 5 Jul 2018 10:40:43 +0000 (13:40 +0300)] 
lib-master: ipc-client: Don't call callback twice if IPC proxy sends invalid input

ipc_client_disconnect() called it once, and the second time was done with
the cmds[0] that was already removed from the array.

6 years agopop3: Do not expunge \Deleted mails without QUIT
Aki Tuomi [Wed, 5 Sep 2018 16:34:20 +0000 (19:34 +0300)] 
pop3: Do not expunge \Deleted mails without QUIT

Prevents loss of email if connection
is unexpectedly terminated.

6 years agocassandra: Add proper log levels to logged messages
Timo Sirainen [Thu, 26 Apr 2018 18:07:31 +0000 (21:07 +0300)] 
cassandra: Add proper log levels to logged messages

If logging to "internal handler", i.e. to log process, write the log prefix
that includes the log level. This way Cassandra's trace/debug/info messages
won't end up in error log.

6 years agolib: Add i_failure_handler_is_internal()
Timo Sirainen [Thu, 26 Apr 2018 18:07:22 +0000 (21:07 +0300)] 
lib: Add i_failure_handler_is_internal()

6 years agolib-storage: fail storage: Allocate event for mailbox.
Stephan Bosch [Wed, 20 Jun 2018 10:40:37 +0000 (12:40 +0200)] 
lib-storage: fail storage: Allocate event for mailbox.

Absence of event causes segfault when event logging is performed for the
mailbox.

7 years agolib-master: Unit test for sending events to stats.
Sergey Kitov [Mon, 1 Oct 2018 08:02:58 +0000 (11:02 +0300)] 
lib-master: Unit test for sending events to stats.

7 years agolib-smtp: client: Make the initialization of the connection after SSL handshake reliable.
Stephan Bosch [Wed, 26 Sep 2018 10:25:59 +0000 (12:25 +0200)] 
lib-smtp: client: Make the initialization of the connection after SSL handshake reliable.

Before, the connection was not guaranteed to be fully initialized after the SSL
handshake. The problem would occur when the handshake finished while writing the
SSL output stream. In a similar HTTP client issue, this caused a segfault.

7 years agolib-http: client: Fix segfault by making the initialization of the connection after...
Stephan Bosch [Tue, 25 Sep 2018 22:26:32 +0000 (00:26 +0200)] 
lib-http: client: Fix segfault by making the initialization of the connection after SSL handshake reliable.

Before, the connection was not guaranteed to be fully initialized after the SSL
handshake. The problem would occur when the handshake finished while writing the
SSL output stream.

7 years agosubmission: Reorder initialization code
Aki Tuomi [Thu, 23 Aug 2018 17:29:58 +0000 (20:29 +0300)] 
submission: Reorder initialization code

login_set socket paths get invalidated when
master_service_init_finish is called, so we need
to run the code that uses them before this.

7 years agolib-smtp: Increase memory pool initial sizes
Aki Tuomi [Thu, 23 Aug 2018 16:15:50 +0000 (19:15 +0300)] 
lib-smtp: Increase memory pool initial sizes

This reduces malloc traffic

7 years agolib-smtp: server: Fix memory leak occurring when an error occurs early for BDAT/BURL.
Stephan Bosch [Tue, 19 Jun 2018 22:22:47 +0000 (00:22 +0200)] 
lib-smtp: server: Fix memory leak occurring when an error occurs early for BDAT/BURL.

7 years agolib-smtp: server: connection: Rely on i_stream_destroy(NULL) being a no-op.
Stephan Bosch [Wed, 20 Jun 2018 13:54:21 +0000 (15:54 +0200)] 
lib-smtp: server: connection: Rely on i_stream_destroy(NULL) being a no-op.