SUNRPC: Move upcall out of auth->au_ops->crcreate()
This fixes a bug whereby if two processes try to look up the same auth_gss credential, they may end up creating two creds, and triggering two upcalls because the upcall is performed before the credential is added to the credcache. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
parent
adb12f63e0
commit
fba3bad488
3 changed files with 23 additions and 9 deletions
|
@ -110,6 +110,7 @@ struct rpc_authops {
|
|||
|
||||
struct rpc_credops {
|
||||
const char * cr_name; /* Name of the auth flavour */
|
||||
int (*cr_init)(struct rpc_auth *, struct rpc_cred *);
|
||||
void (*crdestroy)(struct rpc_cred *);
|
||||
|
||||
int (*crmatch)(struct auth_cred *, struct rpc_cred *, int);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue