Displaying 5 results from an estimated 5 matches for "control_fd".
2007 Aug 03
1
race condition with ControlMaster=auto
...id
-ssh_control_listener(void)
+static int
+ssh_control_listener(int test)
{
struct sockaddr_un addr;
mode_t old_umask;
int addr_len;
if (options.control_path == NULL ||
- options.control_master == SSHCTL_MASTER_NO)
- return;
+ options.control_master == SSHCTL_MASTER_NO ||
+ control_fd != -1)
+ return 1;
- debug("setting up multiplex master socket");
+ debug("trying to set up multiplex master socket");
memset(&addr, '\0', sizeof(addr));
addr.sun_family = AF_UNIX;
@@ -1073,11 +1074,9 @@
old_umask = umask(0177);
if (bind(control_fd, (str...
2008 Jun 19
5
Portforwarding using the control master.
Hi all,
currently I am considering writing a patch for OpenSSH that will allow
portforwarding using the control_master unix domain socket. The idea is
to introduce an extra SSHMUX command, SSHMUX_COMMAND_SOCKS, which will
then pass control to the normal socks functions used for dynamic
forwarding.
The main reason for me to write this patch are:
- some more control over who gets to connect to
2006 Feb 10
0
OpenSSH ControlAllowUsers, et al Patch
...wGroups
+.It ControlDenyUsers
+.It ControlDenyGroups
.It GlobalKnownHostsFile
.It GSSAPIAuthentication
.It GSSAPIDelegateCredentials
Index: ssh.c
===================================================================
--- ssh.c (revision 15802)
+++ ssh.c (revision 15803)
@@ -1012,7 +1012,7 @@
if ((control_fd = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)
fatal("%s socket(): %s\n", __func__, strerror(errno));
- old_umask = umask(0177);
+ old_umask = umask(options.control_bind_mask);
if (bind(control_fd, (struct sockaddr*)&addr, addr_len) == -1) {
control_fd = -1;
if (errno == EINV...
2005 Jun 23
0
ControlPersist.
...+0100
+++ openssh/clientloop.c 2005-06-23 11:05:11.000000000 +0100
@@ -1271,8 +1271,28 @@ static void
client_channel_closed(int id, void *arg)
{
channel_cancel_cleanup(id);
- session_closed = 1;
leave_raw_mode();
+ if (options.control_persist && options.control_path != NULL && control_fd != -1) {
+ int pid = fork();
+
+ if (pid < 0) {
+ error("fork: %.100s", strerror(errno));
+ /* Just exit */
+ session_closed = 1;
+ return;
+ }
+ if (pid != 0) {
+ /* We are the parent. Exit, leaving the child to continue serving */
+ exit(exit_status);
+ }
+ session_...
2007 Jul 05
36
[Bug 1330] New: RFE: 'ControlPersist' support -- automatically fork and leave ControlMaster behind as a dæmon
http://bugzilla.mindrot.org/show_bug.cgi?id=1330
Summary: RFE: 'ControlPersist' support -- automatically fork and
leave ControlMaster behind as a d?mon
Product: Portable OpenSSH
Version: 4.6p1
Platform: Other
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: