summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2011-12-19 10:51:11 +1100
committerDamien Miller <djm@mindrot.org>2011-12-19 10:51:11 +1100
commit5360dff2a011ab2de10f92450aa9cb10703b9a01 (patch)
treec4cb11967df524085856eb304fa561acbad1157a
parent47d8115e5347385d55b4a17b026bd131793b9e95 (diff)
- djm@cvs.openbsd.org 2011/12/02 00:41:56
[mux.c] fix bz#1948: ssh -f doesn't fork for multiplexed connection. ok dtucker@
-rw-r--r--ChangeLog7
-rw-r--r--mux.c5
2 files changed, 11 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 760772d5..75d9a086 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+20111219
+ - OpenBSD CVS Sync
+ - djm@cvs.openbsd.org 2011/12/02 00:41:56
+ [mux.c]
+ fix bz#1948: ssh -f doesn't fork for multiplexed connection.
+ ok dtucker@
+
20111125
- OpenBSD CVS Sync
- oga@cvs.openbsd.org 2011/11/16 12:24:28
diff --git a/mux.c b/mux.c
index 52aec62b..cbc04be7 100644
--- a/mux.c
+++ b/mux.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mux.c,v 1.31 2011/09/23 07:45:05 markus Exp $ */
+/* $OpenBSD: mux.c,v 1.32 2011/12/02 00:41:56 djm Exp $ */
/*
* Copyright (c) 2002-2008 Damien Miller <djm@openbsd.org>
*
@@ -95,6 +95,7 @@ extern Buffer command;
extern volatile sig_atomic_t quit_pending;
extern char *stdio_forward_host;
extern int stdio_forward_port;
+extern int fork_after_authentication_flag;
/* Context for session open confirmation callback */
struct mux_session_confirm_ctx {
@@ -1802,6 +1803,8 @@ mux_client_request_session(int fd)
if (tty_flag)
enter_raw_mode(options.request_tty == REQUEST_TTY_FORCE);
+ if (fork_after_authentication_flag)
+ daemon(1, 1);
/*
* Stick around until the controlee closes the client_fd.
* Before it does, it is expected to write an exit message.