summaryrefslogtreecommitdiff
path: root/sftp.c
diff options
context:
space:
mode:
Diffstat (limited to 'sftp.c')
-rw-r--r--sftp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sftp.c b/sftp.c
index ac6ac9fed..e01703ba9 100644
--- a/sftp.c
+++ b/sftp.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: sftp.c,v 1.121 2010/01/13 12:48:34 jmc Exp $ */ 1/* $OpenBSD: sftp.c,v 1.122 2010/01/15 00:05:22 guenther Exp $ */
2/* 2/*
3 * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org> 3 * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org>
4 * 4 *
@@ -2027,9 +2027,11 @@ connect_to_server(char *path, char **args, int *in, int *out)
2027 * The underlying ssh is in the same process group, so we must 2027 * The underlying ssh is in the same process group, so we must
2028 * ignore SIGINT if we want to gracefully abort commands, 2028 * ignore SIGINT if we want to gracefully abort commands,
2029 * otherwise the signal will make it to the ssh process and 2029 * otherwise the signal will make it to the ssh process and
2030 * kill it too 2030 * kill it too. Contrawise, since sftp sends SIGTERMs to the
2031 * underlying ssh, it must *not* ignore that signal.
2031 */ 2032 */
2032 signal(SIGINT, SIG_IGN); 2033 signal(SIGINT, SIG_IGN);
2034 signal(SIGTERM, SIG_DFL);
2033 execvp(path, args); 2035 execvp(path, args);
2034 fprintf(stderr, "exec: %s: %s\n", path, strerror(errno)); 2036 fprintf(stderr, "exec: %s: %s\n", path, strerror(errno));
2035 _exit(1); 2037 _exit(1);