const char *text)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
struct smtp_server_cmd_ctx *cmd = subm_client->pending_auth;
subm_client->pending_auth = NULL;
const char *data)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
struct smtp_server_cmd_ctx *cmd = subm_client->pending_auth;
i_assert(cmd != NULL);
static const char *const xclient_extensions[] =
{ "SESSION", "FORWARD", NULL };
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
struct smtp_server_settings smtp_set;
subm_client->set = other_sets[0];
static void submission_client_destroy(struct client *client)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
if (subm_client->conn != NULL)
smtp_server_connection_close(&subm_client->conn, NULL);
static void submission_client_notify_auth_ready(struct client *client)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
smtp_server_connection_start(subm_client->conn, FALSE);
}
enum client_disconnect_reason reason,
const char *text)
{
- struct submission_client *client = (struct submission_client *)_client;
+ struct submission_client *client =
+ container_of(_client, struct submission_client, common);
struct smtp_server_connection *conn;
conn = client->conn;
int submission_proxy_parse_line(struct client *client, const char *line)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
struct smtp_server_cmd_ctx *cmd = subm_client->pending_auth;
struct smtp_server_command *command = cmd->cmd;
struct ostream *output;
void submission_proxy_reset(struct client *client)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
subm_client->proxy_state = SUBMISSION_PROXY_BANNER;
subm_client->proxy_capability = 0;
void submission_proxy_error(struct client *client, const char *text)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
struct smtp_server_cmd_ctx *cmd = subm_client->pending_auth;
if (cmd != NULL) {
const char *submission_proxy_get_state(struct client *client)
{
struct submission_client *subm_client =
- (struct submission_client *)client;
+ container_of(client, struct submission_client, common);
i_assert(subm_client->proxy_state < SUBMISSION_PROXY_STATE_COUNT);
return submission_proxy_state_names[subm_client->proxy_state];