From 941032b707e0478504c167a5151306db277644bb Mon Sep 17 00:00:00 2001 From: Tiago Cunha Date: Thu, 15 Oct 2009 01:43:16 +0000 Subject: [PATCH] Sync OpenBSD patchset 403: When a session is unattached, reset its activity timer to prevent it locking instantly when reattached. --- server.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/server.c b/server.c index fa587e4c..f59c1664 100644 --- a/server.c +++ b/server.c @@ -1,4 +1,4 @@ -/* $Id: server.c,v 1.209 2009-10-15 01:30:00 tcunha Exp $ */ +/* $Id: server.c,v 1.210 2009-10-15 01:43:16 tcunha Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -1380,6 +1380,11 @@ server_lock_server(void) if ((s = ARRAY_ITEM(&sessions, i)) == NULL) continue; + if (s->flags & SESSION_UNATTACHED) { + s->activity = time(NULL); + continue; + } + timeout = options_get_number(&s->options, "lock-after-time"); if (timeout <= 0 || t <= s->activity + timeout) return; /* not timed out */ @@ -1403,6 +1408,11 @@ server_lock_sessions(void) if ((s = ARRAY_ITEM(&sessions, i)) == NULL) continue; + if (s->flags & SESSION_UNATTACHED) { + s->activity = time(NULL); + continue; + } + timeout = options_get_number(&s->options, "lock-after-time"); if (timeout > 0 && t > s->activity + timeout) { server_lock_session(s);