version 1.14, 2014/10/20 22:29:25 |
version 1.15, 2015/09/16 22:40:27 |
|
|
cmd_kill_session_exec(struct cmd *self, struct cmd_q *cmdq) |
cmd_kill_session_exec(struct cmd *self, struct cmd_q *cmdq) |
{ |
{ |
struct args *args = self->args; |
struct args *args = self->args; |
struct session *s, *s2, *s3; |
struct session *s, *sloop, *stmp; |
|
|
if ((s = cmd_find_session(cmdq, args_get(args, 't'), 0)) == NULL) |
if ((s = cmd_find_session(cmdq, args_get(args, 't'), 0)) == NULL) |
return (CMD_RETURN_ERROR); |
return (CMD_RETURN_ERROR); |
|
|
if (args_has(args, 'a')) { |
if (args_has(args, 'a')) { |
RB_FOREACH_SAFE(s2, sessions, &sessions, s3) { |
RB_FOREACH_SAFE(sloop, sessions, &sessions, stmp) { |
if (s != s2) { |
if (sloop != s) { |
server_destroy_session(s2); |
server_destroy_session(sloop); |
session_destroy(s2); |
session_destroy(sloop); |
} |
} |
} |
} |
} else { |
} else { |