diff options
author | Martin Pool <mbp@samba.org> | 2001-02-22 13:02:39 +0000 |
---|---|---|
committer | Martin Pool <mbp@samba.org> | 2001-02-22 13:02:39 +0000 |
commit | 8886f8d0e6bed423ff12a6e7b5517ed164216967 (patch) | |
tree | 0ce5cf5e81a7171561b62c71ceec83497c03baf7 /io.c | |
parent | fcb6d28d0bcfa9ac630ee7cf38ff08a1978ee01c (diff) | |
download | rsync-8886f8d0e6bed423ff12a6e7b5517ed164216967.tar.gz |
Add comments.
Better error message in the case of eof on read_timeout.
Diffstat (limited to 'io.c')
-rw-r--r-- | io.c | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -81,6 +81,8 @@ static void read_error_fd(void) int fd = io_error_fd; int tag, len; + /* io_error_fd is temporarily disabled -- is this meant to + * prevent indefinite recursion? */ io_error_fd = -1; read_loop(fd, buf, 4); @@ -108,10 +110,12 @@ static int no_flush; * Read from a socket with IO timeout. return the number of bytes * read. If no bytes can be read then exit, never return a number <= 0. * - * TODO: If the remote shell connection fails, then current versions actually - * report an "unexpected EOF" error here. Since it's a fairly common mistake - * to try to use rsh when ssh is required, we should trap that: if we fail - * to read any data at all, we should give a better explanation. + * TODO: If the remote shell connection fails, then current versions + * actually report an "unexpected EOF" error here. Since it's a + * fairly common mistake to try to use rsh when ssh is required, we + * should trap that: if we fail to read any data at all, we should + * give a better explanation. We can tell whether the connection has + * started by looking e.g. at whether the remote version is known yet. */ static int read_timeout(int fd, char *buf, int len) { @@ -173,7 +177,10 @@ static int read_timeout(int fd, char *buf, int len) if (n == 0) { if (eof_error) { - rprintf(FERROR,"unexpected EOF in read_timeout\n"); + rprintf(FERROR, + "%s: connection to server unexpectedly closed" + " (%ld bytes read so far)\n", + RSYNC_NAME, stats.total_read); } exit_cleanup(RERR_STREAMIO); } |