diff options
author | 2011-01-16 11:50:36 +0000 | |
---|---|---|
committer | 2011-01-16 11:50:36 +0000 | |
commit | b6caf8d36724b1f13c80df94284d0635a0293585 (patch) | |
tree | 90a1f5623d1cee9c0ab2c4ccf41e4ae9112a5b6e /usr.bin/ssh/sshconnect.c | |
parent | Use atomicio when flushing protocol 1 std{out,err} buffers at (diff) | |
download | wireguard-openbsd-b6caf8d36724b1f13c80df94284d0635a0293585.tar.xz wireguard-openbsd-b6caf8d36724b1f13c80df94284d0635a0293585.zip |
reset the SIGPIPE handler when forking to execute child processes;
ok dtucker@
Diffstat (limited to 'usr.bin/ssh/sshconnect.c')
-rw-r--r-- | usr.bin/ssh/sshconnect.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/usr.bin/ssh/sshconnect.c b/usr.bin/ssh/sshconnect.c index 719389ff91b..bf0101c4d4e 100644 --- a/usr.bin/ssh/sshconnect.c +++ b/usr.bin/ssh/sshconnect.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sshconnect.c,v 1.231 2011/01/06 23:01:35 djm Exp $ */ +/* $OpenBSD: sshconnect.c,v 1.232 2011/01/16 11:50:36 djm Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -133,6 +133,7 @@ ssh_proxy_connect(const char *host, u_short port, const char *proxy_command) /* Execute the proxy command. Note that we gave up any extra privileges above. */ + signal(SIGPIPE, SIG_DFL); execv(argv[0], argv); perror(argv[0]); exit(1); @@ -1245,6 +1246,7 @@ ssh_local_cmd(const char *args) osighand = signal(SIGCHLD, SIG_DFL); pid = fork(); if (pid == 0) { + signal(SIGPIPE, SIG_DFL); debug3("Executing %s -c \"%s\"", shell, args); execl(shell, shell, "-c", args, (char *)NULL); error("Couldn't execute %s -c \"%s\": %s", |