return;
}
- str_printfa(str, "started proxying to %s:%u",
- login_proxy_get_host(client->login_proxy),
- login_proxy_get_port(client->login_proxy));
+ /* Include hostname in the log message in case it's different from the
+ IP address in the prefix. */
+ str_printfa(str, "started proxying to %s",
+ login_proxy_get_host(client->login_proxy));
if (strcmp(client->virtual_user, client->proxy_user) != 0) {
/* remote username is different, log it */
- str_append_c(str, '/');
- str_append(str, client->proxy_user);
+ str_printfa(str, " as user %s", client->proxy_user);
}
if (client->proxy_master_user != NULL)
str_printfa(str, " (master %s)", client->proxy_master_user);
{
string_t *str = t_str_new(128);
- str_printfa(str, "Login failed to %s:%u",
- login_proxy_get_host(client->login_proxy),
- login_proxy_get_port(client->login_proxy));
+ str_printfa(str, "Login failed");
if (strcmp(client->virtual_user, client->proxy_user) != 0) {
/* remote username is different, log it */
- str_append_c(str, '/');
- str_append(str, client->proxy_user);
+ str_printfa(str, " as user %s", client->proxy_user);
}
if (client->proxy_master_user != NULL)
str_printfa(str, " (master %s)", client->proxy_master_user);
line = i_stream_next_line(input);
duration = ioloop_time - client->created;
e_error(login_proxy_get_event(client->login_proxy),
- "Disconnected by server %s:%u: %s "
+ "Disconnected by server: %s "
"(state=%s, duration=%us)%s",
- login_proxy_get_host(client->login_proxy),
- login_proxy_get_port(client->login_proxy),
io_stream_get_disconnect_reason(input, NULL),
client_proxy_get_state(client), duration,
line == NULL ? "" : t_strdup_printf(
proxy_set.notify_refresh_secs = reply->proxy_refresh_secs;
proxy_set.ssl_flags = reply->ssl_flags;
+ /* Include destination ip:port also in the log prefix */
+ event_set_append_log_prefix(event, t_strdup_printf(
+ "proxy(%s,%s:%u): ", client->virtual_user,
+ net_ip2addr(&proxy_set.ip), proxy_set.port));
+
if (login_proxy_new(client, event, &proxy_set, proxy_input) < 0) {
event_unref(&event);
client_proxy_error(client, PROXY_FAILURE_MSG);
str_printfa(str, "connect(%s, %u) failed: %m",
net_ip2addr(&proxy->ip), proxy->port);
} else {
- str_printfa(str, "Login for %s:%u timed out in state=%s",
- net_ip2addr(&proxy->ip), proxy->port,
+ str_printfa(str, "Login timed out in state=%s",
client_proxy_get_state(proxy->client));
}
str_printfa(str, " (after %u secs",
rec->last_failure.tv_sec - rec->last_success.tv_sec > PROXY_IMMEDIATE_FAILURE_SECS &&
rec->num_waiting_connections > 1) {
/* the server is down. fail immediately */
- e_error(proxy->event, "Host %s:%u is down",
- net_ip2addr(&proxy->ip), proxy->port);
+ e_error(proxy->event, "Host is down");
return -1;
}
{
struct login_proxy *proxy = *_proxy;
struct client *client = proxy->client;
- const char *ipstr;
unsigned int delay_ms = 0;
*_proxy = NULL;
if ((flags & LOGIN_PROXY_FREE_FLAG_DELAYED) != 0)
delay_ms = login_proxy_delay_disconnect(proxy);
- ipstr = net_ip2addr(&proxy->client->ip);
- e_info(proxy->event, "disconnecting %s (%s)%s",
- ipstr != NULL ? ipstr : "", reason,
+ e_info(proxy->event, "disconnecting (%s)%s", reason,
delay_ms == 0 ? "" : t_strdup_printf(" - disconnecting client in %ums", delay_ms));
i_assert(detached_login_proxies_count > 0);
&proxy->server_output,
&proxy->server_ssl_iostream,
&error) < 0) {
- e_error(proxy->event,
- "Failed to create SSL client to %s:%u: %s",
- net_ip2addr(&proxy->ip), proxy->port, error);
+ e_error(proxy->event, "Failed to create SSL client: %s", error);
ssl_iostream_context_unref(&ssl_ctx);
return -1;
}
ssl_iostream_context_unref(&ssl_ctx);
if (ssl_iostream_handshake(proxy->server_ssl_iostream) < 0) {
error = ssl_iostream_get_last_error(proxy->server_ssl_iostream);
- e_error(proxy->event,
- "Failed to start SSL handshake to %s:%u: %s",
- net_ip2addr(&proxy->ip), proxy->port,
+ e_error(proxy->event, "Failed to start SSL handshake: %s",
ssl_iostream_get_last_error(proxy->server_ssl_iostream));
return -1;
}