summaryrefslogtreecommitdiff
path: root/scp.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2008-07-04 23:10:49 +1000
committerDamien Miller <djm@mindrot.org>2008-07-04 23:10:49 +1000
commitd8968adb5faef58508bb5e7dab7cdbaf5b0e90d5 (patch)
tree33357b9d71f2d3e72b8383e2b3771773914425f4 /scp.c
parentb01bac109bd2fc6b3093fe4aeb31a125be8f2a4e (diff)
- (djm) [atomicio.c channels.c clientloop.c defines.h includes.h]
[packet.c scp.c serverloop.c sftp-client.c ssh-agent.c ssh-keyscan.c] [sshd.c] Explicitly handle EWOULDBLOCK wherever we handle EAGAIN, on some platforms (HP nonstop) it is a distinct errno; bz#1467 reported by sconeu AT yahoo.com; ok dtucker@
Diffstat (limited to 'scp.c')
-rw-r--r--scp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/scp.c b/scp.c
index 46433a638..9f8b7a192 100644
--- a/scp.c
+++ b/scp.c
@@ -474,7 +474,7 @@ scpio(ssize_t (*f)(int, void *, size_t), int fd, void *_p, size_t l, off_t *c)
474 if (r < 0) { 474 if (r < 0) {
475 if (errno == EINTR) 475 if (errno == EINTR)
476 continue; 476 continue;
477 if (errno == EAGAIN) { 477 if (errno == EAGAIN || errno == EWOULDBLOCK) {
478 (void)poll(&pfd, 1, -1); /* Ignore errors */ 478 (void)poll(&pfd, 1, -1); /* Ignore errors */
479 continue; 479 continue;
480 } 480 }