summaryrefslogtreecommitdiff
path: root/sftp.c
diff options
context:
space:
mode:
authorBen Lindstrom <mouring@eviladmin.org>2002-04-02 20:48:19 +0000
committerBen Lindstrom <mouring@eviladmin.org>2002-04-02 20:48:19 +0000
commit47fd8112b5ad0e83d895e5be9342b70832ea3075 (patch)
tree8a72a7bd0295430d833bd1b6469dfabd5616dc6a /sftp.c
parent03f3932829d5246d41c26b3d9f9482c618356430 (diff)
- markus@cvs.openbsd.org 2002/03/30 18:51:15
[monitor.c serverloop.c sftp-int.c sftp.c sshd.c] check waitpid for EINTR; based on patch from peter@ifm.liu.se
Diffstat (limited to 'sftp.c')
-rw-r--r--sftp.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sftp.c b/sftp.c
index f576ed3d5..e4086549c 100644
--- a/sftp.c
+++ b/sftp.c
@@ -24,7 +24,7 @@
24 24
25#include "includes.h" 25#include "includes.h"
26 26
27RCSID("$OpenBSD: sftp.c,v 1.27 2002/03/19 10:49:35 markus Exp $"); 27RCSID("$OpenBSD: sftp.c,v 1.28 2002/03/30 18:51:15 markus Exp $");
28 28
29/* XXX: short-form remote directory listings (like 'ls -C') */ 29/* XXX: short-form remote directory listings (like 'ls -C') */
30 30
@@ -246,8 +246,10 @@ main(int argc, char **argv)
246 if (infile != stdin) 246 if (infile != stdin)
247 fclose(infile); 247 fclose(infile);
248 248
249 if (waitpid(sshpid, NULL, 0) == -1) 249 while (waitpid(sshpid, NULL, 0) == -1)
250 fatal("Couldn't wait for ssh process: %s", strerror(errno)); 250 if (errno != EINTR)
251 fatal("Couldn't wait for ssh process: %s",
252 strerror(errno));
251 253
252 exit(0); 254 exit(0);
253} 255}