From: Timo Sirainen Date: Tue, 6 Aug 2013 11:25:49 +0000 (+0300) Subject: dsync: Name remote connections better. X-Git-Tag: 2.2.6~161 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=02ab29a23e630ed7237f5f82a75664d952b6c70f;p=thirdparty%2Fdovecot%2Fcore.git dsync: Name remote connections better. --- diff --git a/src/doveadm/client-connection.c b/src/doveadm/client-connection.c index 3195fac6e8..262c1af9e9 100644 --- a/src/doveadm/client-connection.c +++ b/src/doveadm/client-connection.c @@ -411,6 +411,9 @@ client_connection_create(int fd, int listen_fd, bool ssl) (void)net_getsockname(fd, &conn->local_ip, &conn->local_port); (void)net_getpeername(fd, &conn->remote_ip, &conn->remote_port); + i_stream_set_name(conn->input, net_ip2addr(&conn->remote_ip)); + o_stream_set_name(conn->output, net_ip2addr(&conn->remote_ip)); + if (client_connection_read_settings(conn) < 0) { client_connection_destroy(&conn); return NULL; diff --git a/src/doveadm/dsync/doveadm-dsync.c b/src/doveadm/dsync/doveadm-dsync.c index a032a61060..d1e2a4f92b 100644 --- a/src/doveadm/dsync/doveadm-dsync.c +++ b/src/doveadm/dsync/doveadm-dsync.c @@ -958,6 +958,7 @@ cmd_dsync_server_run(struct doveadm_mail_cmd_context *_ctx, struct dsync_brain *brain; string_t *temp_prefix, *state_str = NULL; enum dsync_brain_sync_type sync_type; + const char *name; if (_ctx->conn != NULL) { /* doveadm-server connection. start with a success reply. @@ -966,15 +967,21 @@ cmd_dsync_server_run(struct doveadm_mail_cmd_context *_ctx, ctx->input = _ctx->conn->input; ctx->output = _ctx->conn->output; o_stream_nsend(ctx->output, "\n+\n", 3); + i_set_failure_prefix("dsync-server(%s): ", user->username); + name = i_stream_get_name(ctx->input); + } else { + /* the log messages go via stderr to the remote dsync, + so the names are reversed */ + i_set_failure_prefix("dsync-remote(%s): ", user->username); + name = "local"; } - doveadm_user_init_dsync(user); - i_set_failure_prefix("dsync-remote(%s): ", user->username); + doveadm_user_init_dsync(user); temp_prefix = t_str_new(64); mail_user_set_get_temp_prefix(temp_prefix, user->set); - ibc = cmd_dsync_icb_stream_init(ctx, "local", str_c(temp_prefix)); + ibc = cmd_dsync_icb_stream_init(ctx, name, str_c(temp_prefix)); brain = dsync_brain_slave_init(user, ibc, FALSE); io_loop_run(current_ioloop);