X-Git-Url: http://andersk.mit.edu/gitweb/openssh.git/blobdiff_plain/240ae4745cdbbc5e4fc49fca64792ce1a436ec74..a22aff1fb16cbb68775742f7b60c5bfa3f72c903:/scp.c diff --git a/scp.c b/scp.c index 75e50ce2..86276d6d 100644 --- a/scp.c +++ b/scp.c @@ -75,7 +75,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: scp.c,v 1.42 2000/10/14 10:07:21 markus Exp $"); +RCSID("$OpenBSD: scp.c,v 1.43 2000/10/18 18:23:02 markus Exp $"); #include "ssh.h" #include "xmalloc.h" @@ -838,8 +838,10 @@ bad: run_err("%s: %s", np, strerror(errno)); amt = size - i; count += amt; do { - j = atomicio(read, remin, cp, amt); - if (j <= 0) { + j = read(remin, cp, amt); + if (j == -1 && (errno == EINTR || errno == EAGAIN)) { + continue; + } else if (j <= 0) { run_err("%s", j ? strerror(errno) : "dropped connection"); exit(1);