summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--session.c8
2 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index fae8d6c6d..c4cf8c35e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -18,6 +18,9 @@
18 sshpty.c] 18 sshpty.c]
19 make ssh -Wshadow clean, no functional changes 19 make ssh -Wshadow clean, no functional changes
20 markus@ ok 20 markus@ ok
21 - djm@cvs.openbsd.org 2004/06/21 17:53:03
22 [session.c]
23 fix fd leak for multiple subsystem connections; with markus@
21 24
2220040620 2520040620
23 - (tim) [configure.ac Makefile.in] Only change TEST_SHELL on broken platforms. 26 - (tim) [configure.ac Makefile.in] Only change TEST_SHELL on broken platforms.
@@ -1340,4 +1343,4 @@
1340 - (djm) Trim deprecated options from INSTALL. Mention UsePAM 1343 - (djm) Trim deprecated options from INSTALL. Mention UsePAM
1341 - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu 1344 - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu
1342 1345
1343$Id: ChangeLog,v 1.3421 2004/06/22 02:56:01 dtucker Exp $ 1346$Id: ChangeLog,v 1.3422 2004/06/22 02:57:08 dtucker Exp $
diff --git a/session.c b/session.c
index 2fe511612..8720ae7be 100644
--- a/session.c
+++ b/session.c
@@ -33,7 +33,7 @@
33 */ 33 */
34 34
35#include "includes.h" 35#include "includes.h"
36RCSID("$OpenBSD: session.c,v 1.175 2004/05/11 19:01:43 deraadt Exp $"); 36RCSID("$OpenBSD: session.c,v 1.176 2004/06/21 17:53:03 djm Exp $");
37 37
38#include "ssh.h" 38#include "ssh.h"
39#include "ssh1.h" 39#include "ssh1.h"
@@ -481,7 +481,11 @@ do_exec_no_pty(Session *s, const char *command)
481 close(perr[1]); 481 close(perr[1]);
482 482
483 if (compat20) { 483 if (compat20) {
484 session_set_fds(s, pin[1], pout[0], s->is_subsystem ? -1 : perr[0]); 484 if (s->is_subsystem) {
485 close(perr[0]);
486 perr[0] = -1;
487 }
488 session_set_fds(s, pin[1], pout[0], perr[0]);
485 } else { 489 } else {
486 /* Enter the interactive session. */ 490 /* Enter the interactive session. */
487 server_loop(pid, pin[1], pout[0], perr[0]); 491 server_loop(pid, pin[1], pout[0], perr[0]);