summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2013-06-06 08:21:14 +1000
committerDarren Tucker <dtucker@zip.com.au>2013-06-06 08:21:14 +1000
commit0cca17fa1819d3a0ba06a6db41ab3eaa8d769587 (patch)
treef65e13ba122deabf8cadd968782dc1d2ce622617
parent746e9067bd9b3501876e1c86f38f3c510a12f895 (diff)
- dtucker@cvs.openbsd.org 2013/06/05 02:27:50
[sshd.c] When running sshd -D, close stderr unless we have explicitly requesting logging to stderr. From james.hunt at ubuntu.com via bz#1976, djm's patch so, err, ok dtucker.
-rw-r--r--ChangeLog5
-rw-r--r--sshd.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 70c094e1..27f0cfcf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -35,6 +35,11 @@
[mux.c]
fix leaks in mux error paths, from Zhenbo Xu, found by Melton. bz#1967,
ok djm
+ - dtucker@cvs.openbsd.org 2013/06/05 02:27:50
+ [sshd.c]
+ When running sshd -D, close stderr unless we have explicitly requesting
+ logging to stderr. From james.hunt at ubuntu.com via bz#1976, djm's patch
+ so, err, ok dtucker.
20130602
- (tim) [Makefile.in] Make Solaris, UnixWare, & OpenServer linkers happy
diff --git a/sshd.c b/sshd.c
index c0ba420a..1306a62a 100644
--- a/sshd.c
+++ b/sshd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sshd.c,v 1.402 2013/05/17 00:13:14 djm Exp $ */
+/* $OpenBSD: sshd.c,v 1.403 2013/06/05 02:27:50 dtucker Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1024,7 +1024,9 @@ server_accept_inetd(int *sock_in, int *sock_out)
if ((fd = open(_PATH_DEVNULL, O_RDWR, 0)) != -1) {
dup2(fd, STDIN_FILENO);
dup2(fd, STDOUT_FILENO);
- if (fd > STDOUT_FILENO)
+ if (!log_stderr)
+ dup2(fd, STDERR_FILENO);
+ if (fd > (log_stderr ? STDERR_FILENO : STDOUT_FILENO))
close(fd);
}
debug("inetd sockets after dupping: %d, %d", *sock_in, *sock_out);