]> git.ipfire.org Git - thirdparty/dovecot/core.git/log
thirdparty/dovecot/core.git
6 years agosubmission: Implement client vfuncs for all normal SMTP commands.
Stephan Bosch [Sat, 15 Sep 2018 19:47:42 +0000 (21:47 +0200)] 
submission: Implement client vfuncs for all normal SMTP commands.

6 years agosubmission: Implement basic client vfuncs.
Stephan Bosch [Sun, 13 May 2018 09:15:59 +0000 (11:15 +0200)] 
submission: Implement basic client vfuncs.

Currently, only client_destroy can be overriden.

6 years agosubmission: Allocate each recipient object on its own pool.
Stephan Bosch [Tue, 25 Sep 2018 00:11:46 +0000 (02:11 +0200)] 
submission: Allocate each recipient object on its own pool.

This allows allocating per recipient module data.

6 years agosubmission: Provide ephemeral pool for transaction state.
Stephan Bosch [Mon, 24 Sep 2018 23:53:02 +0000 (01:53 +0200)] 
submission: Provide ephemeral pool for transaction state.

6 years agosubmission: Allocate client on alloconly mempool.
Stephan Bosch [Sun, 16 Sep 2018 19:15:20 +0000 (21:15 +0200)] 
submission: Allocate client on alloconly mempool.

6 years agolib-smtp: server: Add proper infrastructure for adding custom MAIL/RCPT command param...
Stephan Bosch [Thu, 13 Sep 2018 21:30:26 +0000 (23:30 +0200)] 
lib-smtp: server: Add proper infrastructure for adding custom MAIL/RCPT command parameters.

6 years agolib-smtp: params: Add functions for dropping extra MAIL/RCPT parameters.
Stephan Bosch [Sun, 16 Sep 2018 20:07:16 +0000 (22:07 +0200)] 
lib-smtp: params: Add functions for dropping extra MAIL/RCPT parameters.

6 years agolib-smtp: params: Add functions for adding extra MAIL/RCPT parameters.
Stephan Bosch [Wed, 3 Oct 2018 20:05:10 +0000 (22:05 +0200)] 
lib-smtp: params: Add functions for adding extra MAIL/RCPT parameters.

6 years agolib-smtp: params: Allow only specific custom parameter extensions, rather than any...
Stephan Bosch [Thu, 13 Sep 2018 20:48:51 +0000 (22:48 +0200)] 
lib-smtp: params: Allow only specific custom parameter extensions, rather than any parameter.

Before the choice was between allowing any extension or none.

6 years agolib-smtp: params: Fix segfault occurring in smtp_param_write() when param->value...
Stephan Bosch [Sun, 16 Sep 2018 19:55:58 +0000 (21:55 +0200)] 
lib-smtp: params: Fix segfault occurring in smtp_param_write() when param->value == NULL.

6 years agosubmission: relay backend: Use SMTP client transaction API, rather than relaying...
Stephan Bosch [Sat, 29 Sep 2018 02:42:27 +0000 (04:42 +0200)] 
submission: relay backend: Use SMTP client transaction API, rather than relaying individual commands.

6 years agolib-smtp: client: transaction: Add option to submit commands immediately, rather...
Stephan Bosch [Sun, 30 Sep 2018 22:28:06 +0000 (00:28 +0200)] 
lib-smtp: client: transaction: Add option to submit commands immediately, rather than queueing them on a zero timeout.

Also, allow interleaving other unrelated (non-transaction) commands. This is
made possible by not locking/plugging the command pipeline.

6 years agolib-smtp: client: Fully disconnect the connection upon failure before triggering...
Stephan Bosch [Sat, 29 Sep 2018 16:28:29 +0000 (18:28 +0200)] 
lib-smtp: client: Fully disconnect the connection upon failure before triggering failure callbacks.

6 years agolib-smtp: client: transaction: Add support for aborting a pending RCPT command.
Stephan Bosch [Sat, 29 Sep 2018 22:37:10 +0000 (00:37 +0200)] 
lib-smtp: client: transaction: Add support for aborting a pending RCPT command.

6 years agolib-smtp: client: transaction: Add support for aborting a pending MAIL command.
Stephan Bosch [Sat, 29 Sep 2018 22:35:26 +0000 (00:35 +0200)] 
lib-smtp: client: transaction: Add support for aborting a pending MAIL command.

6 years agolib-smtp: client: transaction: Add support for creating an empty transaction (without...
Stephan Bosch [Fri, 28 Sep 2018 15:59:53 +0000 (17:59 +0200)] 
lib-smtp: client: transaction: Add support for creating an empty transaction (without MAIL FROM data).

6 years agolib-smtp: client: transaction: Add support for pipelining more than a single MAIL...
Stephan Bosch [Fri, 28 Sep 2018 13:44:55 +0000 (15:44 +0200)] 
lib-smtp: client: transaction: Add support for pipelining more than a single MAIL command.

6 years agolib-smtp: client: transaction: Add infrastructure for pipelining more than a single...
Stephan Bosch [Fri, 28 Sep 2018 00:10:41 +0000 (02:10 +0200)] 
lib-smtp: client: transaction: Add infrastructure for pipelining more than a single MAIL command.

6 years agolib-smtp: client: transaction: Rename mail_from_callback/mail_from_context to mail_ca...
Stephan Bosch [Fri, 28 Sep 2018 11:39:44 +0000 (13:39 +0200)] 
lib-smtp: client: transaction: Rename mail_from_callback/mail_from_context to mail_callback/mail_context.

6 years agolib-smtp: client: transaction: Use linked lists rather than arrays for recipients.
Stephan Bosch [Sun, 30 Sep 2018 09:50:02 +0000 (11:50 +0200)] 
lib-smtp: client: transaction: Use linked lists rather than arrays for recipients.

6 years agolib-smtp: client: transaction: Add support for ending the transaction in a graceful...
Stephan Bosch [Thu, 20 Sep 2018 22:55:51 +0000 (00:55 +0200)] 
lib-smtp: client: transaction: Add support for ending the transaction in a graceful RSET command.

Allows running the pending transaction until RSET, without abruptly aborting
it or issuing a DATA command.

6 years agolib-smtp: client: transaction: Move initiation of command submission to a central...
Stephan Bosch [Sun, 30 Sep 2018 21:56:57 +0000 (23:56 +0200)] 
lib-smtp: client: transaction: Move initiation of command submission to a central position.

6 years agolib-smtp: client: transaction: Perform pipeline plug handling just once at top-level...
Stephan Bosch [Fri, 28 Sep 2018 11:28:50 +0000 (13:28 +0200)] 
lib-smtp: client: transaction: Perform pipeline plug handling just once at top-level in smtp_client_transaction_submit_more().

6 years agolib-smtp: client: transaction: Annotate sub-parts of smtp_client_transaction_send_mor...
Stephan Bosch [Fri, 28 Sep 2018 11:17:30 +0000 (13:17 +0200)] 
lib-smtp: client: transaction: Annotate sub-parts of smtp_client_transaction_send_more() with comments.

6 years agolib-smtp: client: transaction: Move smtp_client_transaction_submit_more().
Stephan Bosch [Sun, 30 Sep 2018 21:35:58 +0000 (23:35 +0200)] 
lib-smtp: client: transaction: Move smtp_client_transaction_submit_more().

6 years agolib-smtp: client: transaction: Move initiation of command submission after starting...
Stephan Bosch [Tue, 2 Oct 2018 02:28:10 +0000 (04:28 +0200)] 
lib-smtp: client: transaction: Move initiation of command submission after starting the transaction timeout.

This is a precaution against the emergence of segfaults when command submission
somehow terminates the transaction in a future version (actually, a segfault
did emerge in an earlier version of this set of changes). Also it is a cosmetic
change: putting the most important act at the end of the function makes more
sense in this case.

6 years agolib-smtp: client: transaction: Rename smtp_client_transaction_send_rcpts() to smtp_cl...
Stephan Bosch [Fri, 28 Sep 2018 11:08:46 +0000 (13:08 +0200)] 
lib-smtp: client: transaction: Rename smtp_client_transaction_send_rcpts() to smtp_client_transaction_submit_more().

6 years agolib-smtp: client: transaction: Move the code executed at the completion of the transa...
Stephan Bosch [Mon, 1 Oct 2018 21:26:18 +0000 (23:26 +0200)] 
lib-smtp: client: transaction: Move the code executed at the completion of the transaction to a separate shared function.

The transaction is complete when all RCPT replies are received and either a DATA
or a RSET command is submitted.

6 years agolib-smtp: client: transaction: Don't trigger next transaction unless all RCPT replies...
Stephan Bosch [Tue, 2 Oct 2018 19:44:48 +0000 (21:44 +0200)] 
lib-smtp: client: transaction: Don't trigger next transaction unless all RCPT replies are received and DATA is submitted.

Triggering the next transaction when DATA submitted while not all RCPT replies
are received (as it was before) is problematic when commands are submitted
immediately by the transaction (which is added in a later commit).

6 years agolib-smtp: client: transaction: Prevent calling callbacks after smtp_client_transactio...
Stephan Bosch [Sat, 29 Sep 2018 18:43:20 +0000 (20:43 +0200)] 
lib-smtp: client: transaction: Prevent calling callbacks after smtp_client_transaction_destroy().

6 years agolib-smtp: client: transaction: Annotate sub-parts of smtp_client_transaction_fail_rep...
Stephan Bosch [Sat, 29 Sep 2018 19:09:57 +0000 (21:09 +0200)] 
lib-smtp: client: transaction: Annotate sub-parts of smtp_client_transaction_fail_reply() with comments.

6 years agolib-smtp: client: transaction: Add debug message for when smtp_client_transaction_abo...
Stephan Bosch [Sat, 29 Sep 2018 19:07:50 +0000 (21:07 +0200)] 
lib-smtp: client: transaction: Add debug message for when smtp_client_transaction_abort() is called during smtp_client_transaction_fail*().

6 years agolib-smtp: client: transaction: Make sure the transaction is finished/aborted after...
Stephan Bosch [Sat, 29 Sep 2018 11:19:53 +0000 (13:19 +0200)] 
lib-smtp: client: transaction: Make sure the transaction is finished/aborted after smtp_client_connection_destroy().

Otherwise, the transaction could be dereferenced several times too often.

6 years agolib-smtp: client: connection: Add debug messages for transaction handling.
Stephan Bosch [Mon, 1 Oct 2018 22:04:44 +0000 (00:04 +0200)] 
lib-smtp: client: connection: Add debug messages for transaction handling.

6 years agolib-smtp: server: RCPT command: Improve replacement of (forwarded) specific error...
Stephan Bosch [Fri, 28 Sep 2018 22:21:05 +0000 (00:21 +0200)] 
lib-smtp: server: RCPT command: Improve replacement of (forwarded) specific error reply with generic state error.

Predictable transaction state errors were not always replaced reliably when
commands were pipelined, leading to a mix of proxy and remote errors.

6 years agolib-smtp: server: MAIL command: Improve replacement of (forwarded) specific error...
Stephan Bosch [Fri, 28 Sep 2018 22:20:50 +0000 (00:20 +0200)] 
lib-smtp: server: MAIL command: Improve replacement of (forwarded) specific error reply with generic state error.

Predictable transaction state errors were not always replaced reliably when
commands were pipelined, leading to a mix of proxy and remote errors.

6 years agolib-smtp: server: Add ability to determine whether command reply was created using...
Stephan Bosch [Fri, 28 Sep 2018 22:19:05 +0000 (00:19 +0200)] 
lib-smtp: server: Add ability to determine whether command reply was created using smtp_server_reply_create_forward().

6 years agolib-smtp: server: MAIL command: Reliably start the transaction when several MAIL...
Stephan Bosch [Thu, 27 Sep 2018 20:16:56 +0000 (22:16 +0200)] 
lib-smtp: server: MAIL command: Reliably start the transaction when several MAIL commands are pipelined.

6 years agolib-smtp: client: Properly manage command timeout during transaction.
Stephan Bosch [Sat, 29 Sep 2018 18:54:03 +0000 (20:54 +0200)] 
lib-smtp: client: Properly manage command timeout during transaction.

6 years agolib-smtp: client: transaction: Set the number of expected DATA replies > 1 only for...
Stephan Bosch [Sat, 29 Sep 2018 13:31:58 +0000 (15:31 +0200)] 
lib-smtp: client: transaction: Set the number of expected DATA replies > 1 only for LMTP.

This was already OK for when all recipients were added at the time the data
command was to be sent. However, for more dynamic transactions involving
pipelining, this was not handled correctly.

6 years agolib-smtp: client: Clear command callback early to prevent mishaps.
Stephan Bosch [Sat, 29 Sep 2018 13:31:14 +0000 (15:31 +0200)] 
lib-smtp: client: Clear command callback early to prevent mishaps.

6 years agolib-smtp: client: Add smtp_client_command_drop_callback().
Stephan Bosch [Sat, 29 Sep 2018 18:39:28 +0000 (20:39 +0200)] 
lib-smtp: client: Add smtp_client_command_drop_callback().

6 years agolib-smtp: client: Fix memory issue caused when reconnecting.
Stephan Bosch [Sat, 29 Sep 2018 18:38:44 +0000 (20:38 +0200)] 
lib-smtp: client: Fix memory issue caused when reconnecting.

6 years agolib-fts: replace repeated explicit hex utf8 with cleaner macro in tokeniser test
Phil Carmody [Thu, 20 Sep 2018 19:33:23 +0000 (22:33 +0300)] 
lib-fts: replace repeated explicit hex utf8 with cleaner macro in tokeniser test

utf8 is too line-noisy, this improves readability.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: tokenizer-generic - tr29 explicit-prefix parsing
Phil Carmody [Wed, 16 May 2018 15:08:01 +0000 (18:08 +0300)] 
lib-fts: tokenizer-generic - tr29 explicit-prefix parsing

Similar logic to before - any wordlike sequence that ends with a * is
considered a prefix search, and immediately begins a new token.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: test-fts-tokenizer - explicit-prefix tests
Phil Carmody [Sat, 28 Apr 2018 12:33:28 +0000 (15:33 +0300)] 
lib-fts: test-fts-tokenizer - explicit-prefix tests

Note that the special handling of '*' only kicks in when in
"search" and "explicitprefix" mode (as passed in through the
settings), and currently, only for the simple mode, not tr29.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: tokenizer-generic - simple explicit prefix search logic
Phil Carmody [Wed, 16 May 2018 14:57:14 +0000 (17:57 +0300)] 
lib-fts: tokenizer-generic - simple explicit prefix search logic

Logic is that words followed by a '*' create a prefix search token.
A new token is begun immediately after that. So "foo*bar" is 2 tokens
"foo*" and "bar", when in explicit prefix search tokenisation mode.

Only active in 'simple', not 'tr29'.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: tokenizer-generic - add more history to break detection
Phil Carmody [Wed, 16 May 2018 14:37:29 +0000 (17:37 +0300)] 
lib-fts: tokenizer-generic - add more history to break detection

For example, going from non-word to non-word is a different type
of break (not really a break) from the transition from a word to
a non-word. Presently, that distinction isn't needed, but it will
be for explicit prefix searches.

Make the tok parameter const too, whilst there.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: tokenizer-generic - recognise request for explicit prefix searching
Phil Carmody [Wed, 16 May 2018 13:32:35 +0000 (16:32 +0300)] 
lib-fts: tokenizer-generic - recognise request for explicit prefix searching

Just store a flag in the tokenizer when the setting is seen, nothing more.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts/test-fts-tokenizer - have different possible test inputs
Phil Carmody [Sat, 28 Apr 2018 09:30:49 +0000 (12:30 +0300)] 
lib-fts/test-fts-tokenizer - have different possible test inputs

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: generic simple tokeniser - distinguish "letters" from non-"letters"
Phil Carmody [Fri, 11 May 2018 10:34:40 +0000 (13:34 +0300)] 
lib-fts: generic simple tokeniser - distinguish "letters" from non-"letters"

prev_type is only compared against SINGLE_QUOTE, so there will be no
behavioural differences. However, maintaining the state that we've just
seen something we are prepared to search for (very loosely, a "letter")
rather than something that we threw away (word breaks) will be important
when it comes to explicit prefix query parsing.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: tokenizer-generic - move related helpers together in file
Phil Carmody [Wed, 16 May 2018 14:11:27 +0000 (17:11 +0300)] 
lib-fts: tokenizer-generic - move related helpers together in file

They're logically related, and not specifically simple or tr29 related,
so keep them together, so either tokeniser can use them. Cosmetic only,
no functional changes.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts: tokenizer-generic - move state history setting into helper
Phil Carmody [Wed, 16 May 2018 14:04:35 +0000 (17:04 +0300)] 
lib-fts: tokenizer-generic - move state history setting into helper

We can read the value directly, but for encapsulation it's best to do
the shifting of the token type history into a helper in a similar way
as how it is done for tr29 tokenising.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts/fts-tokenizer-generic - rename more state variables - cosmetic
Phil Carmody [Sat, 28 Apr 2018 12:46:54 +0000 (15:46 +0300)] 
lib-fts/fts-tokenizer-generic - rename more state variables - cosmetic

No need for a suffix now we've renamed the type variables.
Patch best viewed with: git show --color-words='[[:alnum:]_]+'

Unfortunately this is very churny, but there are no functional changes.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts/fts-tokenizer-generic - rename state variables - cosmetic
Phil Carmody [Sat, 28 Apr 2018 12:38:06 +0000 (15:38 +0300)] 
lib-fts/fts-tokenizer-generic - rename state variables - cosmetic

These contain types, not letters, no functional changes.

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agolib-fts/fts-tokeniser-generic: move to container_of() for type-safety
Phil Carmody [Thu, 26 Apr 2018 13:57:11 +0000 (16:57 +0300)] 
lib-fts/fts-tokeniser-generic: move to container_of() for type-safety

Signed-off-by: Phil Carmody <phil@dovecot.fi>
6 years agosubmission: backends: Add trans_start() and trans_free() vfuncs.
Stephan Bosch [Sat, 15 Sep 2018 16:15:36 +0000 (18:15 +0200)] 
submission: backends: Add trans_start() and trans_free() vfuncs.

These are called when the SMTP transaction is started and freed respectively.

6 years agosubmission: Record backend used for each recipient.
Stephan Bosch [Sat, 15 Sep 2018 16:04:33 +0000 (18:04 +0200)] 
submission: Record backend used for each recipient.

This is a preparation for plugins overriding the default backend for a recipient.

6 years agosubmission: Record main backend for the transaction.
Stephan Bosch [Sat, 15 Sep 2018 15:33:03 +0000 (17:33 +0200)] 
submission: Record main backend for the transaction.

This is a preparation for plugins overriding the default backend for a transaction.

6 years agosubmission: DATA command: Pass the total size of the data stream to the backend.
Stephan Bosch [Thu, 4 Oct 2018 19:56:20 +0000 (21:56 +0200)] 
submission: DATA command: Pass the total size of the data stream to the backend.

6 years agosubmission: DATA command: Obtain the size of the buffered data from the stream positi...
Stephan Bosch [Thu, 4 Oct 2018 19:01:44 +0000 (21:01 +0200)] 
submission: DATA command: Obtain the size of the buffered data from the stream position rather than using i_stream_get_size().

6 years agosubmission: relay backend: Use backend-specific settings rather than the generic...
Stephan Bosch [Sat, 15 Sep 2018 14:01:59 +0000 (16:01 +0200)] 
submission: relay backend: Use backend-specific settings rather than the generic submission service settings.

This way, several relay backends can be operated together with different
settings.

6 years agosubmission: relay backend: Make struct submission_backend_relay private.
Stephan Bosch [Sat, 15 Sep 2018 13:46:34 +0000 (15:46 +0200)] 
submission: relay backend: Make struct submission_backend_relay private.

6 years agosubmission: relay backend: Turn client_proxy_create() into a proper backend constructor.
Stephan Bosch [Sat, 15 Sep 2018 13:29:40 +0000 (15:29 +0200)] 
submission: relay backend: Turn client_proxy_create() into a proper backend constructor.

6 years agosubmission: relay backend: Turn client_get_max_mail_size() into a relay backend vfunc.
Stephan Bosch [Sat, 15 Sep 2018 13:13:32 +0000 (15:13 +0200)] 
submission: relay backend: Turn client_get_max_mail_size() into a relay backend vfunc.

6 years agosubmission: relay backend: Turn client_proxy_input_pre/post() into relay backend...
Stephan Bosch [Sat, 15 Sep 2018 12:44:41 +0000 (14:44 +0200)] 
submission: relay backend: Turn client_proxy_input_pre/post() into relay backend vfuncs.

6 years agosubmission: relay backend: Turn client_proxy_start() into a relay backend vfunc.
Stephan Bosch [Sat, 15 Sep 2018 12:35:10 +0000 (14:35 +0200)] 
submission: relay backend: Turn client_proxy_start() into a relay backend vfunc.

6 years agosubmission: relay backend: Turn client_proxy_destroy() into a relay backend vfunc.
Stephan Bosch [Sat, 15 Sep 2018 12:25:38 +0000 (14:25 +0200)] 
submission: relay backend: Turn client_proxy_destroy() into a relay backend vfunc.

6 years agosubmission: relay backend: Turn SMTP command functions into relay backend vfuncs.
Stephan Bosch [Sat, 15 Sep 2018 11:53:07 +0000 (13:53 +0200)] 
submission: relay backend: Turn SMTP command functions into relay backend vfuncs.

6 years agosubmission: client: Create default backend in a separate function.
Stephan Bosch [Sat, 15 Sep 2018 12:08:57 +0000 (14:08 +0200)] 
submission: client: Create default backend in a separate function.

6 years agosubmission: Define generic backend API.
Stephan Bosch [Sat, 15 Sep 2018 11:02:50 +0000 (13:02 +0200)] 
submission: Define generic backend API.

6 years agosubmission: Add submission_backend_capabilities setting.
Stephan Bosch [Wed, 3 Oct 2018 23:37:24 +0000 (01:37 +0200)] 
submission: Add submission_backend_capabilities setting.

This can be used to specify which capabilities the (relay) backend supports,
avoiding the need to query the backend explicitly before the EHLO reply is sent
to the client.

6 years agosubmission: commands: Expect connection setup errors from relaying commands.
Stephan Bosch [Thu, 4 Oct 2018 19:39:58 +0000 (21:39 +0200)] 
submission: commands: Expect connection setup errors from relaying commands.

Subsequent changes remove the guarantee that the connection is setup successfuly
(to gain EHLO capabilities) before commands are submitted. This means that the
callbacks from commands can thereafter return connection setup errors as well.

6 years agolib-smtp: client: Use the new smtp_capability_find_by_name() function.
Stephan Bosch [Wed, 26 Sep 2018 19:44:35 +0000 (21:44 +0200)] 
lib-smtp: client: Use the new smtp_capability_find_by_name() function.

6 years agolib-smtp: client: Document the forced_capabilities setting.
Stephan Bosch [Wed, 26 Sep 2018 19:36:01 +0000 (21:36 +0200)] 
lib-smtp: client: Document the forced_capabilities setting.

6 years agolib-smtp: Add utility function for finding capabilities by name.
Stephan Bosch [Wed, 26 Sep 2018 19:32:45 +0000 (21:32 +0200)] 
lib-smtp: Add utility function for finding capabilities by name.

6 years agosubmission: client: Simplifly calculation of max mail size.
Stephan Bosch [Sat, 15 Sep 2018 13:02:20 +0000 (15:02 +0200)] 
submission: client: Simplifly calculation of max mail size.

6 years agosubmission: Record accepted recipients in the client object.
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.

6 years agosubmission: Reformat submission-backend-relay.c.
Stephan Bosch [Sun, 15 Jul 2018 20:37:13 +0000 (22:37 +0200)] 
submission: Reformat submission-backend-relay.c.

6 years agosubmission: relay backend: Change almost all occurrences of 'proxy' to 'relay'.
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.

6 years agosubmission: relay backend: Rename client_command_handle_proxy_reply() to backend_rela...
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.

6 years agosubmission: relay backend: Rename *_proxy_cb() to *_callback().
Stephan Bosch [Sun, 15 Jul 2018 18:56:47 +0000 (20:56 +0200)] 
submission: relay backend: Rename *_proxy_cb() to *_callback().

6 years agosubmission: relay backend: Add 'relay_' prefix to command functions and structs.
Stephan Bosch [Sun, 15 Jul 2018 19:10:39 +0000 (21:10 +0200)] 
submission: relay backend: Add 'relay_' prefix to command functions and structs.

6 years agosubmission: relay backend: Use pointer to backend rather than client in command contexts.
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.

6 years agosubmission: Move relay-related client fields to separate backend struct.
Stephan Bosch [Sun, 15 Jul 2018 18:49:05 +0000 (20:49 +0200)] 
submission: Move relay-related client fields to separate backend struct.

6 years agosubmission: Move client_proxy_get_max_mail_size() to submission-backend-relay.c.
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.

6 years agosubmission: Move client_proxy_input_pre/post() 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.

6 years agosubmission: Move client_proxy_destroy() 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.

6 years agosubmission: Move client_proxy_create() 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.

6 years agosubmission: Move client_proxy_start() 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.

6 years agosubmission: Split off obtaining the relay connection capabilities into a separate...
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.

6 years agosubmission: Split off corking and uncorking the relay connection in 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.

6 years agosubmission: Split off closing 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.

6 years agosubmission: Split off starting 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.

6 years agosubmission: Remove client_proxy_is_disconnected().
Stephan Bosch [Sun, 15 Jul 2018 17:54:06 +0000 (19:54 +0200)] 
submission: Remove client_proxy_is_disconnected().

It is not used anywhere.

6 years agosubmission: Remove client_proxy_is_ready().
Stephan Bosch [Sun, 15 Jul 2018 17:52:41 +0000 (19:52 +0200)] 
submission: Remove client_proxy_is_ready().

It is not used anywhere.

6 years agosubmission: Move relay part of QUIT command to submission-backend-relay.c.
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.

6 years agosubmission: Move generic part of QUIT command to submission-commands.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.

6 years agosubmission: Move relay part of NOOP command to submission-backend-relay.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.

6 years agosubmission: Move generic part of NOOP command to submission-commands.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.