From 91e4dc83fcfa8c2d4a318d5f23dcebbaeeea2096 Mon Sep 17 00:00:00 2001 From: Tiago Cunha Date: Sun, 11 Oct 2009 23:30:28 +0000 Subject: Sync OpenBSD patchset 370: 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. --- server-msg.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'server-msg.c') diff --git a/server-msg.c b/server-msg.c index 35446723..2664643d 100644 --- a/server-msg.c +++ b/server-msg.c @@ -1,4 +1,4 @@ -/* $Id: server-msg.c,v 1.90 2009-09-25 17:47:42 tcunha Exp $ */ +/* $Id: server-msg.c,v 1.91 2009-10-11 23:30:28 tcunha Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -104,7 +104,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) @@ -180,7 +181,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; -- cgit