From 39207a46b4b0d3d9c3ef8d03e9d3c6d5e11df9ec Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Fri, 5 Nov 2004 20:19:51 +1100 Subject: - djm@cvs.openbsd.org 2004/09/23 13:00:04 [ssh.c] correctly honour -n in multiplex client mode; spotted by sturm@ ok markus@ --- ChangeLog | 5 ++++- ssh.c | 13 +++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 188869c3d..17750e92c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -29,6 +29,9 @@ - deraadt@cvs.openbsd.org 2004/09/15 18:46:04 [scp.c] scratch that do { } while (0) wrapper in this case + - djm@cvs.openbsd.org 2004/09/23 13:00:04 + [ssh.c] + correctly honour -n in multiplex client mode; spotted by sturm@ ok markus@ 20041102 - (dtucker) [configure.ac includes.h] Bug #947: Fix compile error on HP-UX @@ -1808,4 +1811,4 @@ - (djm) Trim deprecated options from INSTALL. Mention UsePAM - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu -$Id: ChangeLog,v 1.3569 2004/11/05 09:10:02 dtucker Exp $ +$Id: ChangeLog,v 1.3570 2004/11/05 09:19:51 dtucker Exp $ diff --git a/ssh.c b/ssh.c index 7859b0f78..c231c5fae 100644 --- a/ssh.c +++ b/ssh.c @@ -40,7 +40,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: ssh.c,v 1.227 2004/09/15 00:46:01 deraadt Exp $"); +RCSID("$OpenBSD: ssh.c,v 1.228 2004/09/23 13:00:04 djm Exp $"); #include #include @@ -1249,11 +1249,20 @@ static void control_client(const char *path) { struct sockaddr_un addr; - int i, r, sock, exitval, num_env, addr_len; + int i, r, fd, sock, exitval, num_env, addr_len; Buffer m; char *cp; extern char **environ; + if (stdin_null_flag) { + if ((fd = open(_PATH_DEVNULL, O_RDONLY)) == -1) + fatal("open(/dev/null): %s", strerror(errno)); + if (dup2(fd, STDIN_FILENO) == -1) + fatal("dup2: %s", strerror(errno)); + if (fd > STDERR_FILENO) + close(fd); + } + memset(&addr, '\0', sizeof(addr)); addr.sun_family = AF_UNIX; addr_len = offsetof(struct sockaddr_un, sun_path) + -- cgit v1.2.3