diff options
author | Thomas Adam <thomas@xteddy.org> | 2017-04-22 12:01:19 +0100 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2017-04-22 12:01:19 +0100 |
commit | e802b683ea0ebfa377a5bb8a6b03454c1edbe2d5 (patch) | |
tree | 7a495bed6d4d979974826a11707f1c2585173768 /cmd-lock-server.c | |
parent | b08e451c916fd942b9d24706583ccedf307e0877 (diff) | |
parent | 55cd4c7bc756509f241788f7f73676676ef538f6 (diff) | |
download | rtmux-e802b683ea0ebfa377a5bb8a6b03454c1edbe2d5.tar.gz rtmux-e802b683ea0ebfa377a5bb8a6b03454c1edbe2d5.tar.bz2 rtmux-e802b683ea0ebfa377a5bb8a6b03454c1edbe2d5.zip |
Merge branch 'obsd-master'
Diffstat (limited to 'cmd-lock-server.c')
-rw-r--r-- | cmd-lock-server.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/cmd-lock-server.c b/cmd-lock-server.c index 117c423f..524fa451 100644 --- a/cmd-lock-server.c +++ b/cmd-lock-server.c @@ -44,7 +44,7 @@ const struct cmd_entry cmd_lock_session_entry = { .args = { "t:", 0, 0 }, .usage = CMD_TARGET_SESSION_USAGE, - .tflag = CMD_SESSION, + .target = { 't', CMD_FIND_SESSION, 0 }, .flags = CMD_AFTERHOOK, .exec = cmd_lock_server_exec @@ -57,22 +57,25 @@ const struct cmd_entry cmd_lock_client_entry = { .args = { "t:", 0, 0 }, .usage = CMD_TARGET_CLIENT_USAGE, - .tflag = CMD_CLIENT, - .flags = CMD_AFTERHOOK, .exec = cmd_lock_server_exec }; static enum cmd_retval -cmd_lock_server_exec(struct cmd *self, __unused struct cmdq_item *item) +cmd_lock_server_exec(struct cmd *self, struct cmdq_item *item) { + struct args *args = self->args; + struct client *c; + if (self->entry == &cmd_lock_server_entry) server_lock(); else if (self->entry == &cmd_lock_session_entry) - server_lock_session(item->state.tflag.s); - else - server_lock_client(item->state.c); - + server_lock_session(item->target.s); + else { + if ((c = cmd_find_client(item, args_get(args, 't'), 0)) == NULL) + return (CMD_RETURN_ERROR); + server_lock_client(c); + } recalculate_sizes(); return (CMD_RETURN_NORMAL); |