mirror of git://anongit.mindrot.org/openssh.git
upstream: on fatal errors, make scp wait for ssh connection before
exiting avoids LogLevel=verbose (or greater) messages from ssh appearing after scp has returned exited and control has returned to the shell; ok markus@ (this was originally committed as r1.223 along with unrelated stuff that I rolled back in r1.224) OpenBSD-Commit-ID: 1261fd667ad918484889ed3d7aec074f3956a74b
This commit is contained in:
parent
2ae7771749
commit
b4b3f3da6c
20
scp.c
20
scp.c
|
@ -1,4 +1,4 @@
|
|||
/* $OpenBSD: scp.c,v 1.224 2021/08/09 07:19:12 djm Exp $ */
|
||||
/* $OpenBSD: scp.c,v 1.225 2021/08/09 07:21:01 djm Exp $ */
|
||||
/*
|
||||
* scp - secure remote copy. This is basically patched BSD rcp which
|
||||
* uses ssh to do the data transfer (instead of using rcmd).
|
||||
|
@ -2141,3 +2141,21 @@ lostconn(int signo)
|
|||
else
|
||||
exit(1);
|
||||
}
|
||||
|
||||
void
|
||||
cleanup_exit(int i)
|
||||
{
|
||||
if (remin > 0)
|
||||
close(remin);
|
||||
if (remout > 0)
|
||||
close(remout);
|
||||
if (remin2 > 0)
|
||||
close(remin2);
|
||||
if (remout2 > 0)
|
||||
close(remout2);
|
||||
if (do_cmd_pid > 0)
|
||||
waitpid(do_cmd_pid, NULL, 0);
|
||||
if (do_cmd_pid2 > 0)
|
||||
waitpid(do_cmd_pid2, NULL, 0);
|
||||
exit(i);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue