]>
git.ipfire.org Git - thirdparty/dovecot/core.git/log
Stephan Bosch [Wed, 26 Sep 2018 19:36:01 +0000 (21:36 +0200)]
lib-smtp: client: Document the forced_capabilities setting.
Stephan Bosch [Wed, 26 Sep 2018 19:32:45 +0000 (21:32 +0200)]
lib-smtp: Add utility function for finding capabilities by name.
Stephan Bosch [Sat, 15 Sep 2018 13:02:20 +0000 (15:02 +0200)]
submission: client: Simplifly calculation of max mail size.
Stephan Bosch [Sat, 15 Sep 2018 11:17:11 +0000 (13:17 +0200)]
submission: Record accepted recipients in the client object.
Allows associating context with recipients in future changes.
Stephan Bosch [Sun, 15 Jul 2018 20:37:13 +0000 (22:37 +0200)]
submission: Reformat submission-backend-relay.c.
Stephan Bosch [Sun, 15 Jul 2018 19:42:17 +0000 (21:42 +0200)]
submission: relay backend: Change almost all occurrences of 'proxy' to 'relay'.
This makes the naming consistent with the name of the backend. Only the lib-smtp
proxy_data is not renamed.
Stephan Bosch [Sun, 15 Jul 2018 19:27:48 +0000 (21:27 +0200)]
submission: relay backend: Rename client_command_handle_proxy_reply() to backend_relay_handle_relay_reply().
Also make it accept the backend rather than the client struct.
Stephan Bosch [Sun, 15 Jul 2018 18:56:47 +0000 (20:56 +0200)]
submission: relay backend: Rename *_proxy_cb() to *_callback().
Stephan Bosch [Sun, 15 Jul 2018 19:10:39 +0000 (21:10 +0200)]
submission: relay backend: Add 'relay_' prefix to command functions and structs.
Stephan Bosch [Sun, 15 Jul 2018 18:35:45 +0000 (20:35 +0200)]
submission: relay backend: Use pointer to backend rather than client in command contexts.
Stephan Bosch [Sun, 15 Jul 2018 18:49:05 +0000 (20:49 +0200)]
submission: Move relay-related client fields to separate backend struct.
Stephan Bosch [Sun, 2 Sep 2018 15:10:19 +0000 (17:10 +0200)]
submission: Move client_proxy_get_max_mail_size() to submission-backend-relay.c.
Stephan Bosch [Sun, 2 Sep 2018 14:05:28 +0000 (16:05 +0200)]
submission: Move client_proxy_input_pre/post() to submission-backend-relay.c.
Stephan Bosch [Sun, 2 Sep 2018 13:29:24 +0000 (15:29 +0200)]
submission: Move client_proxy_destroy() to submission-backend-relay.c.
Stephan Bosch [Sun, 15 Jul 2018 20:02:37 +0000 (22:02 +0200)]
submission: Move client_proxy_create() to submission-backend-relay.c.
Stephan Bosch [Sat, 1 Sep 2018 14:40:10 +0000 (16:40 +0200)]
submission: Move client_proxy_start() to submission-backend-relay.c.
Stephan Bosch [Sun, 2 Sep 2018 15:04:14 +0000 (17:04 +0200)]
submission: Split off obtaining the relay connection capabilities into a separate function.
Stephan Bosch [Sun, 2 Sep 2018 13:44:33 +0000 (15:44 +0200)]
submission: Split off corking and uncorking the relay connection in a separate function.
Stephan Bosch [Sun, 2 Sep 2018 13:10:08 +0000 (15:10 +0200)]
submission: Split off closing the relay connection in a separate function.
Stephan Bosch [Sat, 1 Sep 2018 13:51:01 +0000 (15:51 +0200)]
submission: Split off starting the relay connection in a separate function.
Stephan Bosch [Sun, 15 Jul 2018 17:54:06 +0000 (19:54 +0200)]
submission: Remove client_proxy_is_disconnected().
It is not used anywhere.
Stephan Bosch [Sun, 15 Jul 2018 17:52:41 +0000 (19:52 +0200)]
submission: Remove client_proxy_is_ready().
It is not used anywhere.
Stephan Bosch [Wed, 29 Aug 2018 22:26:03 +0000 (00:26 +0200)]
submission: Move relay part of QUIT command to submission-backend-relay.c.
Stephan Bosch [Wed, 29 Aug 2018 22:21:59 +0000 (00:21 +0200)]
submission: Move generic part of QUIT command to submission-commands.c.
Stephan Bosch [Sun, 15 Jul 2018 17:06:34 +0000 (19:06 +0200)]
submission: Move relay part of NOOP command to submission-backend-relay.c.
Stephan Bosch [Wed, 29 Aug 2018 21:51:09 +0000 (23:51 +0200)]
submission: Move generic part of NOOP command to submission-commands.c.
Stephan Bosch [Sun, 9 Sep 2018 23:07:58 +0000 (01:07 +0200)]
submission: Move relay part of VRFY command to submission-backend-relay.c.
Stephan Bosch [Wed, 29 Aug 2018 21:37:25 +0000 (23:37 +0200)]
submission: Move generic part of VRFY command to submission-commands.c.
Stephan Bosch [Sun, 15 Jul 2018 17:38:11 +0000 (19:38 +0200)]
submission: Move BURL command implementation to submission-commands.c.
Stephan Bosch [Sun, 15 Jul 2018 17:03:09 +0000 (19:03 +0200)]
submission: Move relay part of DATA command to submission-backend-relay.c.
Stephan Bosch [Wed, 29 Aug 2018 22:59:50 +0000 (00:59 +0200)]
submission: Move generic part of DATA command to submission-commands.c.
Stephan Bosch [Sun, 15 Jul 2018 17:00:11 +0000 (19:00 +0200)]
submission: Move relay part of RSET command to submission-backend-relay.c.
Stephan Bosch [Wed, 29 Aug 2018 21:33:11 +0000 (23:33 +0200)]
submission: Move generic part of RSET command to submission-commands.c.
Stephan Bosch [Wed, 29 Aug 2018 20:45:00 +0000 (22:45 +0200)]
submission: Move relay part of RCPT command to submission-backend-relay.c.
Stephan Bosch [Wed, 29 Aug 2018 21:30:31 +0000 (23:30 +0200)]
submission: Move generic part of RCPT command to submission-commands.c.
Stephan Bosch [Sun, 15 Jul 2018 16:57:26 +0000 (18:57 +0200)]
submission: Move relay part of MAIL command to submission-backend-relay.c.
Stephan Bosch [Wed, 29 Aug 2018 21:25:32 +0000 (23:25 +0200)]
submission: Move generic part of MAIL command to submission-commands.c.
Stephan Bosch [Sun, 15 Jul 2018 16:54:00 +0000 (18:54 +0200)]
submission: Move relay part of HELO/EHLO command to submission-backend-relay.c.
Stephan Bosch [Sat, 1 Sep 2018 11:34:53 +0000 (13:34 +0200)]
submission: Move generic part of HELO/EHLO command to submission-commands.c.
Stephan Bosch [Wed, 29 Aug 2018 22:18:40 +0000 (00:18 +0200)]
submission: Split the QUIT command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Wed, 29 Aug 2018 21:43:43 +0000 (23:43 +0200)]
submission: Split the NOOP command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Wed, 29 Aug 2018 20:37:27 +0000 (22:37 +0200)]
submission: Split the VRFY command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Mon, 27 Aug 2018 23:58:58 +0000 (01:58 +0200)]
submission: Split the DATA command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Wed, 29 Aug 2018 20:30:51 +0000 (22:30 +0200)]
submission: Split the RSET command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Wed, 29 Aug 2018 20:27:12 +0000 (22:27 +0200)]
submission: Split the RCPT command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Wed, 29 Aug 2018 20:25:18 +0000 (22:25 +0200)]
submission: Split the MAIL command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Sat, 1 Sep 2018 11:30:34 +0000 (13:30 +0200)]
submission: Split the EHLO command into a generic part and a part related to relaying to an MTA.
Stephan Bosch [Mon, 27 Aug 2018 18:15:40 +0000 (20:15 +0200)]
submission: Move submission_helo_reply_submit() from cmd-helo.c to submission-commands.c.
Stephan Bosch [Mon, 27 Aug 2018 17:46:21 +0000 (19:46 +0200)]
submission: Make HELO/EHLO reply submission a separate public function.
Stephan Bosch [Sun, 15 Jul 2018 17:10:36 +0000 (19:10 +0200)]
submission: Move client_command_handle_proxy_reply() to submission-backend-relay.c.
Stephan Bosch [Sat, 15 Sep 2018 16:33:30 +0000 (18:33 +0200)]
submission: client: Remove spurious forward declaration of "struct client_command_context".
Stephan Bosch [Sat, 15 Sep 2018 19:06:07 +0000 (21:06 +0200)]
lib-smtp: client: Add forward declaration for struct smtp_client_settings in smtp-client-connection.h.
Stephan Bosch [Wed, 12 Sep 2018 19:21:09 +0000 (21:21 +0200)]
lib-smtp: server: Drop pending commands and transaction at disconnect rather than destroy.
This makes sure the conn_trans_free() connection callback is called before
th conn_disconnect() callback. This makes more sense than the other way around,
which instead would be a likely cause for mishaps causing segfaults and the
like.
Stephan Bosch [Sun, 2 Sep 2018 21:26:21 +0000 (23:26 +0200)]
lib-smtp: server: Add callback for transaction start.
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.
Aki Tuomi [Wed, 3 Oct 2018 09:00:55 +0000 (12:00 +0300)]
push-notification: Resolve confusion about msg->seq
It's not the same seq what the mail has, but a sequence that
is used to find out UID for saved mails. So rename it to
save_idx and treat it accordingly. Note that save_idx is 0
based, and mail sequence is 1 based.
Aki Tuomi [Fri, 28 Sep 2018 10:30:51 +0000 (13:30 +0300)]
push-notification-driver-lua: Include date from MessageAppend
Aki Tuomi [Fri, 28 Sep 2018 10:30:01 +0000 (13:30 +0300)]
push-notification-event-messageappend: Include date information parsed from headers
Consistency with MessageNew
Aki Tuomi [Fri, 28 Sep 2018 10:01:58 +0000 (13:01 +0300)]
push-notification: Make sure txn messages are unique
save_count is not reliable as it's not incremented for events like
flag changes.
Aki Tuomi [Thu, 27 Sep 2018 06:54:10 +0000 (09:54 +0300)]
push-notification-driver-lua: Always use DLUA_LOG_LABEL
Aki Tuomi [Thu, 27 Sep 2018 06:52:59 +0000 (09:52 +0300)]
push-notification-driver-lua: Properly register all events
Aki Tuomi [Tue, 25 Sep 2018 12:49:21 +0000 (15:49 +0300)]
mail-lua: Fix gc code to push key first then value
Otherwise it uses nil as key, which makes no sense and leads to eventual crash.
Aki Tuomi [Tue, 25 Sep 2018 11:09:55 +0000 (14:09 +0300)]
push-notification-driver-lua: tx begin pushed mail user not username
Aki Tuomi [Tue, 25 Sep 2018 11:09:28 +0000 (14:09 +0300)]
push-notification-driver-lua: Do not push user again
User is already pushed in tx begin, and can be stored there into the context.
Aki Tuomi [Tue, 25 Sep 2018 11:08:59 +0000 (14:08 +0300)]
push-notification-driver-lua: Move event push earlier
Simplifies code
Aki Tuomi [Tue, 25 Sep 2018 09:24:02 +0000 (12:24 +0300)]
mail-lua: Add deinit_pre function
Aki Tuomi [Mon, 24 Sep 2018 12:29:12 +0000 (15:29 +0300)]
push-notification-driver-lua: Reference mail user only if initialization is successful
Will cause assert-crash otherwise if initialization fails
Aki Tuomi [Mon, 24 Sep 2018 12:24:19 +0000 (15:24 +0300)]
push-notification-driver-lua: Fix symbol names
Aki Tuomi [Mon, 24 Sep 2018 12:23:59 +0000 (15:23 +0300)]
mail-lua: Deinit script after others
Some other plugin might need Lua for deinit
Aki Tuomi [Mon, 24 Sep 2018 11:46:19 +0000 (14:46 +0300)]
push-notification-driver-lua: Use Lua references for context
Aki Tuomi [Mon, 24 Sep 2018 12:07:26 +0000 (15:07 +0300)]
mail-lua: Implement mail_lua_plugin_get_script
It was forgotten in
950c7e06dbf7f1cd696653af95b8c0053a9e86da
Sergey Kitov [Mon, 1 Oct 2018 08:02:58 +0000 (11:02 +0300)]
lib-master: Unit test for sending events to stats.
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
Josef 'Jeff' Sipek [Wed, 19 Sep 2018 12:50:26 +0000 (15:50 +0300)]
dbox: cache pop3 order and uidl when saving mails
Josef 'Jeff' Sipek [Wed, 19 Sep 2018 12:49:56 +0000 (15:49 +0300)]
lib-storage/index: Add a helper to cache pop3 order and uidl
Josef 'Jeff' Sipek [Thu, 20 Sep 2018 10:32:46 +0000 (06:32 -0400)]
global: Use uint32_t for pop3 order
Aki Tuomi [Tue, 24 Jul 2018 06:51:39 +0000 (09:51 +0300)]
lib-ssl-iostream: If certificate check fails, suggest checking ssl ca settings
Aki Tuomi [Mon, 23 Jul 2018 09:40:15 +0000 (12:40 +0300)]
lib-ssl-iostream: Always fall back to default CAs for client contexts
When creating a client context, we always try to load the default
CA, if no CA settings have been provided. This makes it also possible
to allow invalid certs without specifying ssl_client_ca settings,
and also makes dovecot trust system store by default for outgoing
connections.
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.
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.
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
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
Stephan Bosch [Wed, 19 Sep 2018 20:26:08 +0000 (22:26 +0200)]
lib-smtp: reply-parser: Fix closing the text_lines array with NULL sentinel.
For (EHLO) replies with more than 7 lines, the text_lines array of the reply did
not end in NULL, causing a segfault.
Stephan Bosch [Wed, 5 Sep 2018 19:56:42 +0000 (21:56 +0200)]
lib-storage: Change default postmaster_address setting to "postmaster@<user domain or server hostname>".
The former "postmaster@<user domain>" default would only yield a valid
postmaster address when there is a domain part in the username. The new default
uses a conditional variable expansion choose "%d" when it is not empty and the
new "%{hostname}" otherwise.
Stephan Bosch [Wed, 5 Sep 2018 19:24:15 +0000 (21:24 +0200)]
lib-storage: mail-user: Add "%{hostname}" variable expansion.
Stephan Bosch [Wed, 5 Sep 2018 19:23:05 +0000 (21:23 +0200)]
lib-storage: mail-user: Add convenience functions for obtaining postmaster address.
Stephan Bosch [Wed, 5 Sep 2018 19:11:15 +0000 (21:11 +0200)]
lib-storage: Move postmaster_address setting from mail_storage_settings to mail_user_settings.
Timo Sirainen [Tue, 18 Sep 2018 22:28:13 +0000 (01:28 +0300)]
imap-login: Remove extra '+' from state strings in log output
If multiple outgoing commands were in progress, the state should have
said e.g. "state=capability+login", not "state=capability+++login".
Timo Sirainen [Wed, 19 Sep 2018 08:32:08 +0000 (11:32 +0300)]
director: Add assert to make sure doveadm connection's IO isn't added multiple times
Timo Sirainen [Fri, 7 Sep 2018 17:04:48 +0000 (20:04 +0300)]
doveadm: Make sure to stop running commands requiring synced ring when ring is no longer synced
A command could desync the ring, and no more commands should be run
afterwards.
This also fixes a bug where a command that desyncs the ring is supposed to
wait for the ring being synced before returning OK, but returns it
immediately instead.
Timo Sirainen [Wed, 19 Sep 2018 09:41:39 +0000 (12:41 +0300)]
global: Don't try to send stats from unit tests
Timo Sirainen [Thu, 13 Sep 2018 12:30:22 +0000 (15:30 +0300)]
lib: i_zero*() - Give compiler error if it's wrongly used on an array
Timo Sirainen [Thu, 13 Sep 2018 12:29:45 +0000 (15:29 +0300)]
lib-master, auth: Fix clearing memory
It doesn't look like these being wrong were causing any bugs.
Timo Sirainen [Tue, 11 Sep 2018 12:54:39 +0000 (15:54 +0300)]
doveadm stats dump: Fix potentially not writing all stats output
It depended on whether uninitialized stack memory was 0 or not.
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.
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.
Stephan Bosch [Thu, 13 Sep 2018 18:44:22 +0000 (20:44 +0200)]
lib-http: response: Add convenience functions for status evaluation.
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
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.
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()