Skip to content

Commit

Permalink
submission: relay backend: Turn client_proxy_create() into a proper b…
Browse files Browse the repository at this point in the history
…ackend constructor.
  • Loading branch information
stephanbosch authored and villesavolainen committed Feb 12, 2019
1 parent 17673c8 commit 59fcfb6
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 9 deletions.
10 changes: 7 additions & 3 deletions src/submission/submission-backend-relay.c
Expand Up @@ -745,16 +745,17 @@ backend_relay_cmd_quit(struct submission_backend *_backend,
* Relay backend
*/

void client_proxy_create(struct client *client,
const struct submission_settings *set)
struct submission_backend *
submission_backend_relay_create(struct client *client,
const struct submission_settings *set)
{
struct submission_backend_relay *backend;
struct mail_user *user = client->user;
struct ssl_iostream_settings ssl_set;
struct smtp_client_settings smtp_set;
enum smtp_client_connection_ssl_mode ssl_mode;

backend = &client->backend;
backend = i_new(struct submission_backend_relay, 1);
submission_backend_init(&backend->backend, client,
&backend_relay_vfuncs);

Expand Down Expand Up @@ -804,6 +805,8 @@ void client_proxy_create(struct client *client,
backend->conn = smtp_client_connection_create(
smtp_client, SMTP_PROTOCOL_SMTP, set->submission_relay_host,
set->submission_relay_port, ssl_mode, &smtp_set);

return &backend->backend;
}

static void backend_relay_destroy(struct submission_backend *_backend)
Expand All @@ -813,6 +816,7 @@ static void backend_relay_destroy(struct submission_backend *_backend)

if (backend->conn != NULL)
smtp_client_connection_close(&backend->conn);
i_free(backend);
}

static void backend_relay_ready_cb(const struct smtp_reply *reply,
Expand Down
5 changes: 3 additions & 2 deletions src/submission/submission-backend-relay.h
Expand Up @@ -15,7 +15,8 @@ struct submission_backend_relay {
bool xclient_sent:1;
};

void client_proxy_create(struct client *client,
const struct submission_settings *set);
struct submission_backend *
submission_backend_relay_create(struct client *client,
const struct submission_settings *set);

#endif
4 changes: 2 additions & 2 deletions src/submission/submission-client.c
Expand Up @@ -125,8 +125,8 @@ static void
client_create_backend_default(struct client *client,
const struct submission_settings *set)
{
client_proxy_create(client, set);
client->backend_default = &client->backend.backend;
client->backend_default =
submission_backend_relay_create(client, set);
}

static void client_init_urlauth(struct client *client)
Expand Down
2 changes: 0 additions & 2 deletions src/submission/submission-client.h
Expand Up @@ -2,7 +2,6 @@
#define CLIENT_H

#include "net.h"
#include "submission-backend-relay.h"

struct smtp_reply;

Expand Down Expand Up @@ -38,7 +37,6 @@ struct client {
struct smtp_server_stats stats;

enum smtp_capability backend_capabilities;
struct submission_backend_relay backend;
struct submission_backend *backend_default;
struct submission_backend *backends;
unsigned int backends_count;
Expand Down

0 comments on commit 59fcfb6

Please sign in to comment.