From c294038d986d61ef2d35816d96ed86786aed03bc Mon Sep 17 00:00:00 2001 From: Andrew Deason Date: Sat, 23 Apr 2011 16:44:41 -0500 Subject: [PATCH] viced: Print a warning when using a deleted client We should never get a deleted client back from GetClient. Log a message if we do, to explain why access may suddenly appear to fail, and assist in determining why. Note that we still try to service the request, since the accessing user may still have enough access to do whatever was requested. Reviewed-on: http://gerrit.openafs.org/4529 Tested-by: BuildBot Reviewed-by: Derrick Brashear (cherry picked from commit 8b07814e037d19dc9868dd202e82d69b96fbdcae) Change-Id: I0b1d9fe46e5b83b93b59ff6facc2421db9136c12 Reviewed-on: http://gerrit.openafs.org/4533 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- src/viced/host.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/viced/host.c b/src/viced/host.c index 92baaa4c7..2e8347670 100644 --- a/src/viced/host.c +++ b/src/viced/host.c @@ -2665,6 +2665,14 @@ GetClient(struct rx_connection *tcon, struct client **cp) H_UNLOCK; return VICETOKENDEAD; } + if (client->deleted) { + ViceLog(0, ("GetClient: got deleted client, this should not happen! " + "Connection will appear to have no rights; " + "tcon %p sid %d epoch %d client %p host %s:%d viceid %d\n", + tcon, (int)rxr_CidOf(tcon), (int)rxr_GetEpoch(tcon), client, + afs_inet_ntoa_r(client->host->host, hoststr), + (int)ntohs(client->host->port), (int)client->ViceId)); + } client->refCount++; *cp = client; -- 2.39.5