1
0
mirror of https://github.com/tmate-io/tmate-ssh-server.git synced 2020-11-18 19:53:51 -08:00

Sync OpenBSD patchset 357:

Check for already locked/suspended clients in server_lock_client rather than
its callers.
This commit is contained in:
Tiago Cunha 2009-10-05 18:23:31 +00:00
parent 2931277608
commit 813d78e46a

View File

@ -1,4 +1,4 @@
/* $Id: server-fn.c,v 1.91 2009-09-25 17:51:39 tcunha Exp $ */ /* $Id: server-fn.c,v 1.92 2009-10-05 18:23:31 tcunha Exp $ */
/* /*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -164,8 +164,6 @@ server_lock(void)
c = ARRAY_ITEM(&clients, i); c = ARRAY_ITEM(&clients, i);
if (c == NULL || c->session == NULL) if (c == NULL || c->session == NULL)
continue; continue;
if (c->flags & CLIENT_SUSPENDED)
continue;
server_lock_client(c); server_lock_client(c);
} }
} }
@ -180,8 +178,6 @@ server_lock_session(struct session *s)
c = ARRAY_ITEM(&clients, i); c = ARRAY_ITEM(&clients, i);
if (c == NULL || c->session == NULL || c->session != s) if (c == NULL || c->session == NULL || c->session != s)
continue; continue;
if (c->flags & CLIENT_SUSPENDED)
continue;
server_lock_client(c); server_lock_client(c);
} }
} }
@ -193,6 +189,9 @@ server_lock_client(struct client *c)
size_t cmdlen; size_t cmdlen;
struct msg_lock_data lockdata; struct msg_lock_data lockdata;
if (c->flags & CLIENT_SUSPENDED)
return;
cmd = options_get_string(&c->session->options, "lock-command"); cmd = options_get_string(&c->session->options, "lock-command");
cmdlen = strlcpy(lockdata.cmd, cmd, sizeof lockdata.cmd); cmdlen = strlcpy(lockdata.cmd, cmd, sizeof lockdata.cmd);
if (cmdlen >= sizeof lockdata.cmd) if (cmdlen >= sizeof lockdata.cmd)