nfsd4: fail when delegreturn gets a non-delegation stateid
Previous cleanup reveals an obvious (though harmless) bug: when delegreturn gets a stateid that isn't for a delegation, it should return an error rather than doing nothing. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
This commit is contained in:
parent
203a8c8e66
commit
7e0f7cf582
1 changed files with 1 additions and 2 deletions
|
@ -2418,10 +2418,9 @@ nfsd4_delegreturn(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
|
||||||
status = nfserr_stale_stateid;
|
status = nfserr_stale_stateid;
|
||||||
if (STALE_STATEID(stateid))
|
if (STALE_STATEID(stateid))
|
||||||
goto out;
|
goto out;
|
||||||
status = nfs_ok;
|
status = nfserr_bad_stateid;
|
||||||
if (!is_delegation_stateid(stateid))
|
if (!is_delegation_stateid(stateid))
|
||||||
goto out;
|
goto out;
|
||||||
status = nfserr_bad_stateid;
|
|
||||||
dp = find_delegation_stateid(inode, stateid);
|
dp = find_delegation_stateid(inode, stateid);
|
||||||
if (!dp)
|
if (!dp)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
Loading…
Add table
Reference in a new issue