diff --git a/src/plugins/xfer/xfer-buffer.c b/src/plugins/xfer/xfer-buffer.c
index a99a8ec..601a8fc 100644
--- a/src/plugins/xfer/xfer-buffer.c
+++ b/src/plugins/xfer/xfer-buffer.c
@@ -45,7 +45,7 @@ void
 xfer_buffer_refresh (const char *hotlist)
 {
     struct t_xfer *ptr_xfer, *xfer_selected;
-    char str_color[256], suffix[32], status[64], date[128], eta[128];
+    char str_color[256], suffix[32], status[64], date[128], eta[128], nick_and_ip [32];
     char *progress_bar, *str_pos, *str_total, *str_bytes_per_sec;
     int i, length, line, progress_bar_size, num_bars;
     unsigned long long pct_complete;
@@ -93,13 +93,26 @@ xfer_buffer_refresh (const char *hotlist)
                       weechat_config_string (xfer_config_color_text),
                       weechat_config_string (xfer_config_color_text_bg));
 
+            if ( ptr_xfer->own_address == ptr_xfer->address)
+                snprintf (nick_and_ip, 32,
+                      "%.12s",
+                      ptr_xfer->remote_nick);
+            else
+                snprintf (nick_and_ip, 32,
+                      "%.12s (%ld.%ld.%ld.%ld)",
+                      ptr_xfer->remote_nick,
+                      ptr_xfer->address >> 24,
+                      (ptr_xfer->address >> 16) & 0xff,
+                      (ptr_xfer->address >> 8) & 0xff,
+                      ptr_xfer->address & 0xff);
+                    
             /* display first line with remote nick, filename and plugin name/id */
             weechat_printf_y (xfer_buffer, (line * 2) + 2,
-                              "%s%s%-24s %s%s%s%s (%s.%s)",
+                              "%s%s%-34s %s%s%s%s (%s.%s)",
                               weechat_color(str_color),
                               (line == xfer_buffer_selected_line) ?
                               "*** " : "    ",
-                              ptr_xfer->remote_nick,
+                              nick_and_ip,
                               (XFER_IS_FILE(ptr_xfer->type)) ? "\"" : "",
                               (XFER_IS_FILE(ptr_xfer->type)) ?
                               ptr_xfer->filename : _("xfer chat"),
@@ -111,9 +124,9 @@ xfer_buffer_refresh (const char *hotlist)
             snprintf (status, sizeof (status),
                       "%s", _(xfer_status_string[ptr_xfer->status]));
             length = weechat_utf8_strlen_screen (status);
-            if (length < 20)
+            if (length < 30)
             {
-                for (i = 0; i < 20 - length; i++)
+                for (i = 0; i < 30 - length; i++)
                 {
                     strcat (status, " ");
                 }
diff --git a/src/plugins/xfer/xfer-network.c b/src/plugins/xfer/xfer-network.c
index 9580bf0..5922c6d 100644
--- a/src/plugins/xfer/xfer-network.c
+++ b/src/plugins/xfer/xfer-network.c
@@ -215,6 +215,32 @@ xfer_network_send_file_fork (struct t_xfer *xfer)
             _exit (EXIT_SUCCESS);
     }
 
+            weechat_printf (NULL,
+                            _("%s: sending file to %s (%s.%s), ip: %d.%d.%d.%d: %s "
+                              "(local filename: %s), %llu bytes (protocol: %s)"),
+                            XFER_PLUGIN_NAME,
+                            xfer->remote_nick,
+                            xfer->plugin_name,
+                            xfer->plugin_id,
+                            xfer->address >> 24,
+                            (xfer->address >> 16) & 0xff,
+                            (xfer->address >> 8) & 0xff,
+                            xfer->address & 0xff,
+                            xfer->filename,
+                            xfer->local_filename,
+                            xfer->size,
+                            xfer_protocol_string[xfer->protocol]);
+    if (xfer->start_resume)
+    {
+        weechat_printf (NULL,
+                        _("%s: file %s resumed at position %llu"),
+                        XFER_PLUGIN_NAME,
+                        xfer->filename,
+                        xfer->start_resume);
+    }
+        xfer_buffer_refresh (WEECHAT_HOTLIST_MESSAGE);
+
+
     /* parent process */
     xfer->child_pid = pid;
     close (xfer->child_write);
diff --git a/src/plugins/xfer/xfer.c b/src/plugins/xfer/xfer.c
index 3713902..9644e20 100644
--- a/src/plugins/xfer/xfer.c
+++ b/src/plugins/xfer/xfer.c
@@ -560,6 +560,8 @@ xfer_new (const char *plugin_name, const char *plugin_id,
     new_xfer->size = size;
     new_xfer->proxy = (proxy) ? strdup (proxy) : NULL;
     new_xfer->address = address;
+    if (type == XFER_TYPE_FILE_SEND)
+        new_xfer->own_address = address;
     new_xfer->port = port;
 
     new_xfer->status = XFER_STATUS_WAITING;
@@ -591,18 +593,6 @@ xfer_new (const char *plugin_name, const char *plugin_id,
             xfer_buffer_refresh (WEECHAT_HOTLIST_MESSAGE);
             break;
         case XFER_TYPE_FILE_SEND:
-            weechat_printf (NULL,
-                            _("%s: sending file to %s (%s.%s): %s "
-                              "(local filename: %s), %llu bytes (protocol: %s)"),
-                            XFER_PLUGIN_NAME,
-                            remote_nick,
-                            plugin_name,
-                            plugin_id,
-                            filename,
-                            local_filename,
-                            size,
-                            xfer_protocol_string[protocol]);
-            xfer_buffer_refresh (WEECHAT_HOTLIST_MESSAGE);
             break;
         case XFER_TYPE_CHAT_RECV:
             weechat_printf (NULL,
@@ -1237,13 +1227,6 @@ xfer_accept_resume_cb (void *data, const char *signal, const char *type_data,
         ptr_xfer->start_resume = start_resume;
         ptr_xfer->last_check_pos = start_resume;
         xfer_send_signal (ptr_xfer, "xfer_send_accept_resume");
-
-        weechat_printf (NULL,
-                        _("%s: file %s resumed at position %llu"),
-                        XFER_PLUGIN_NAME,
-                        ptr_xfer->filename,
-                        ptr_xfer->start_resume);
-        xfer_buffer_refresh (WEECHAT_HOTLIST_MESSAGE);
     }
     else
     {
diff --git a/src/plugins/xfer/xfer.h b/src/plugins/xfer/xfer.h
index 90626bc..33fd30e 100644
--- a/src/plugins/xfer/xfer.h
+++ b/src/plugins/xfer/xfer.h
@@ -135,6 +135,7 @@ struct t_xfer
     pid_t child_pid;                   /* pid of child process (send/recv)  */
     int child_read;                    /* to read into child pipe           */
     int child_write;                   /* to write into child pipe          */
+    unsigned long own_address;         /* own IP address                    */
     struct t_hook *hook_fd;            /* hook for socket or child pipe     */
     struct t_hook *hook_timer;         /* timeout for recever accept        */
     char *unterminated_message;        /* beginning of a message            */
