|
@@ -3111,10 +3111,11 @@ nfsd4_setclientid_confirm(struct svc_rqst *rqstp,
|
|
/*
|
|
/*
|
|
* We try hard to give out unique clientid's, so if we get an
|
|
* We try hard to give out unique clientid's, so if we get an
|
|
* attempt to confirm the same clientid with a different cred,
|
|
* attempt to confirm the same clientid with a different cred,
|
|
- * there's a bug somewhere. Let's charitably assume it's our
|
|
|
|
- * bug.
|
|
|
|
|
|
+ * the client may be buggy; this should never happen.
|
|
|
|
+ *
|
|
|
|
+ * Nevertheless, RFC 7530 recommends INUSE for this case:
|
|
*/
|
|
*/
|
|
- status = nfserr_serverfault;
|
|
|
|
|
|
+ status = nfserr_clid_inuse;
|
|
if (unconf && !same_creds(&unconf->cl_cred, &rqstp->rq_cred))
|
|
if (unconf && !same_creds(&unconf->cl_cred, &rqstp->rq_cred))
|
|
goto out;
|
|
goto out;
|
|
if (conf && !same_creds(&conf->cl_cred, &rqstp->rq_cred))
|
|
if (conf && !same_creds(&conf->cl_cred, &rqstp->rq_cred))
|