summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2020-09-21 07:29:09 +0000
committerDamien Miller <djm@mindrot.org>2020-09-21 17:30:27 +1000
commit0a4a5571ada76b1b012bec9cf6ad1203fc19ec8d (patch)
treedf86796c36cf3b56fedc3d5fce9fa41a7730d227
parentd14fe25e6c3b89f8af17e2894046164ac3b45688 (diff)
upstream: close stdin when forking after authentication too; ok markus
-rw-r--r--ssh.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/ssh.c b/ssh.c
index 6202e3c0..f34ca0d7 100644
--- a/ssh.c
+++ b/ssh.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh.c,v 1.535 2020/09/20 23:31:46 djm Exp $ */
+/* $OpenBSD: ssh.c,v 1.536 2020/09/21 07:29:09 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1758,7 +1758,8 @@ fork_postauth(void)
_PATH_DEVNULL, strerror(errno));
else {
keep_stderr = log_is_on_stderr() && debug_flag;
- if (dup2(devnull, STDOUT_FILENO) == -1 ||
+ if (dup2(devnull, STDIN_FILENO) == -1 ||
+ dup2(devnull, STDOUT_FILENO) == -1 ||
(!keep_stderr && dup2(devnull, STDOUT_FILENO) == -1))
fatal("%s: dup2() stdio failed", __func__);
if (devnull > STDERR_FILENO)