Sync OpenBSD patchset 357:

Check for already locked/suspended clients in server_lock_client rather than
its callers.
pull/1/head
Tiago Cunha 2009-10-05 18:23:31 +00:00
parent 2931277608
commit 813d78e46a
1 changed files with 4 additions and 5 deletions

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>
@ -164,8 +164,6 @@ server_lock(void)
c = ARRAY_ITEM(&clients, i);
if (c == NULL || c->session == NULL)
continue;
if (c->flags & CLIENT_SUSPENDED)
continue;
server_lock_client(c);
}
}
@ -180,8 +178,6 @@ server_lock_session(struct session *s)
c = ARRAY_ITEM(&clients, i);
if (c == NULL || c->session == NULL || c->session != s)
continue;
if (c->flags & CLIENT_SUSPENDED)
continue;
server_lock_client(c);
}
}
@ -193,6 +189,9 @@ server_lock_client(struct client *c)
size_t cmdlen;
struct msg_lock_data lockdata;
if (c->flags & CLIENT_SUSPENDED)
return;
cmd = options_get_string(&c->session->options, "lock-command");
cmdlen = strlcpy(lockdata.cmd, cmd, sizeof lockdata.cmd);
if (cmdlen >= sizeof lockdata.cmd)