mail_storage_service_get_var_expand_table(storage_service, &input));
client->service_set = master_service_settings_get(master_service);
client->lmtp_set = lmtp_set;
- client->set = lda_set;
+ client->unexpanded_lda_set = lda_set;
}
static void client_generate_session_id(struct client *client)
client_read_settings(client);
client_raw_user_create(client);
client_generate_session_id(client);
- client->my_domain = client->set->hostname;
+ client->my_domain = client->unexpanded_lda_set->hostname;
client->lhlo = i_strdup("missing");
client->proxy_ttl = LMTP_PROXY_DEFAULT_TTL;
pool_t pool;
const struct setting_parser_info *user_set_info;
- const struct lda_settings *set;
+ const struct lda_settings *unexpanded_lda_set;
const struct lmtp_settings *lmtp_set;
const struct master_service_settings *service_set;
int fd_in, fd_out;
address_add_detail(struct client *client, const char *username,
const char *detail)
{
- const char *delim = client->set->recipient_delimiter;
+ const char *delim = client->unexpanded_lda_set->recipient_delimiter;
const char *domain;
domain = strchr(username, '@');
struct lmtp_proxy_settings proxy_set;
memset(&proxy_set, 0, sizeof(proxy_set));
- proxy_set.my_hostname = client->set->hostname;
+ proxy_set.my_hostname = client->my_domain;
proxy_set.dns_client_socket_path = dns_client_socket_path;
proxy_set.session_id = client->state.session_id;
proxy_set.source_ip = client->remote_ip;
*username_r = address;
*detail_r = "";
- if (*client->set->recipient_delimiter == '\0')
+ if (*client->unexpanded_lda_set->recipient_delimiter == '\0')
return;
domain = strchr(address, '@');
- p = strstr(address, client->set->recipient_delimiter);
+ p = strstr(address, client->unexpanded_lda_set->recipient_delimiter);
if (p != NULL && (domain == NULL || p < domain)) {
/* user+detail@domain */
*username_r = t_strdup_until(*username_r, p);