From 316269a07523a421755158540d2f4e22fa312866 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Sun, 26 Mar 2006 11:32:27 +0000 Subject: r14739: keep the last request time for the smbsrv_connection, smbsrv_session and smbsrv_tcon for management tools metze (This used to be commit 2c87f210e9e68de42dc45ca6532f3f33f4b6ce95) --- source4/smb_server/tcon.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'source4/smb_server/tcon.c') diff --git a/source4/smb_server/tcon.c b/source4/smb_server/tcon.c index 95e42d6537..8b100d11ce 100644 --- a/source4/smb_server/tcon.c +++ b/source4/smb_server/tcon.c @@ -58,7 +58,8 @@ NTSTATUS smbsrv_smb2_init_tcons(struct smbsrv_session *smb_sess) /**************************************************************************** find a tcon given a tid for SMB ****************************************************************************/ -static struct smbsrv_tcon *smbsrv_tcon_find(struct smbsrv_tcons_context *tcons_ctx, uint32_t tid) +static struct smbsrv_tcon *smbsrv_tcon_find(struct smbsrv_tcons_context *tcons_ctx, + uint32_t tid, struct timeval request_time) { void *p; struct smbsrv_tcon *tcon; @@ -71,19 +72,24 @@ static struct smbsrv_tcon *smbsrv_tcon_find(struct smbsrv_tcons_context *tcons_c if (!p) return NULL; tcon = talloc_get_type(p, struct smbsrv_tcon); + if (!tcon) return NULL; + + tcon->statistics.last_request_time = request_time; return tcon; } -struct smbsrv_tcon *smbsrv_smb_tcon_find(struct smbsrv_connection *smb_conn, uint32_t tid) +struct smbsrv_tcon *smbsrv_smb_tcon_find(struct smbsrv_connection *smb_conn, + uint32_t tid, struct timeval request_time) { - return smbsrv_tcon_find(&smb_conn->smb_tcons, tid); + return smbsrv_tcon_find(&smb_conn->smb_tcons, tid, request_time); } -struct smbsrv_tcon *smbsrv_smb2_tcon_find(struct smbsrv_session *smb_sess, uint32_t tid) +struct smbsrv_tcon *smbsrv_smb2_tcon_find(struct smbsrv_session *smb_sess, + uint32_t tid, struct timeval request_time) { if (!smb_sess) return NULL; - return smbsrv_tcon_find(&smb_sess->smb2_tcons, tid); + return smbsrv_tcon_find(&smb_sess->smb2_tcons, tid, request_time); } /* -- cgit