SUNRPC: Don't change the RPCSEC_GSS context on a credential that is in use
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Thu, 17 Apr 2008 21:03:58 +0000 (17:03 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 19 Apr 2008 20:55:19 +0000 (16:55 -0400)
commitcd019f7517206a74d8cdb64d5c82b1f76be608cc
treeac5e563e23a26519ac5b48f0c2a46cc0f8a3c7cf
parent7b6962b0a6000df48c8a5fd967d262f77704101b
SUNRPC: Don't change the RPCSEC_GSS context on a credential that is in use

When a server rejects our credential with an AUTH_REJECTEDCRED or similar,
we need to refresh the credential and then retry the request.
However, we do want to allow any requests that are in flight to finish
executing, so that we can at least attempt to process the replies that
depend on this instance of the credential.

The solution is to ensure that gss_refresh() looks up an entirely new
RPCSEC_GSS credential instead of attempting to create a context for the
existing invalid credential.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
net/sunrpc/auth_gss/auth_gss.c