diff options
author | Nicholas Marriott <nicm@openbsd.org> | 2009-10-10 09:46:11 +0000 |
---|---|---|
committer | Nicholas Marriott <nicm@openbsd.org> | 2009-10-10 09:46:11 +0000 |
commit | b7d031cc92a1d9ac3ca8c2a71b76b0a78ea77465 (patch) | |
tree | 394d17a68e2b92bf82be36b23206037d25adf7b9 /server-msg.c | |
parent | 93b353d3532cc12e7e8ca05f59a2199398252df5 (diff) | |
download | rtmux-b7d031cc92a1d9ac3ca8c2a71b76b0a78ea77465.tar.gz rtmux-b7d031cc92a1d9ac3ca8c2a71b76b0a78ea77465.tar.bz2 rtmux-b7d031cc92a1d9ac3ca8c2a71b76b0a78ea77465.zip |
Support for individual session idle time locking. May be enabled by turning off
the lock-server option (it is on by default). When this is off, each session
locks when it has been idle for the lock-after-time setting. When on, the
entire server locks when ALL sessions have been idle for their individual
lock-after-time settings.
This replaces one global-only option (lock-after-time) with another
(lock-server), but the default behaviour is usually preferable so there don't
seem to be many alternatives.
Diff/idea largely from Thomas Adam, tweaked by me.
Diffstat (limited to 'server-msg.c')
-rw-r--r-- | server-msg.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/server-msg.c b/server-msg.c index ec085610..248b94d4 100644 --- a/server-msg.c +++ b/server-msg.c @@ -105,7 +105,8 @@ server_msg_dispatch(struct client *c) tty_start_tty(&c->tty); server_redraw_client(c); recalculate_sizes(); - server_activity = time(NULL); + if (c->session != NULL) + c->session->activity = time(NULL); break; case MSG_ENVIRON: if (datalen != sizeof environdata) @@ -181,7 +182,8 @@ server_msg_command(struct client *c, struct msg_command_data *data) int argc; char **argv, *cause; - server_activity = time(NULL); + if (c->session != NULL) + c->session->activity = time(NULL); ctx.error = server_msg_command_error; ctx.print = server_msg_command_print; |