diff options
author | J. Bruce Fields <bfields@redhat.com> | 2011-10-19 17:52:12 +0200 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2011-10-19 17:52:12 +0200 |
commit | 8b289b2c2355c3bea75f3e499b4aa251a3191382 (patch) | |
tree | 1811962d5409e5585d9e21921080bf007dfe554b /fs/nfsd/nfs4xdr.c | |
parent | nfsd4: remove unneeded CLAIM_DELEGATE_CUR workaround (diff) | |
download | linux-8b289b2c2355c3bea75f3e499b4aa251a3191382.tar.xz linux-8b289b2c2355c3bea75f3e499b4aa251a3191382.zip |
nfsd4: implement new 4.1 open reclaim types
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/nfs4xdr.c')
-rw-r--r-- | fs/nfsd/nfs4xdr.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c index 645a0a9d8073..fdc09a52cd8d 100644 --- a/fs/nfsd/nfs4xdr.c +++ b/fs/nfsd/nfs4xdr.c @@ -803,6 +803,19 @@ nfsd4_decode_open(struct nfsd4_compoundargs *argp, struct nfsd4_open *open) if ((status = check_filename(open->op_fname.data, open->op_fname.len, nfserr_inval))) return status; break; + case NFS4_OPEN_CLAIM_FH: + case NFS4_OPEN_CLAIM_DELEG_PREV_FH: + if (argp->minorversion < 1) + goto xdr_error; + /* void */ + break; + case NFS4_OPEN_CLAIM_DELEG_CUR_FH: + if (argp->minorversion < 1) + goto xdr_error; + status = nfsd4_decode_stateid(argp, &open->op_delegate_stateid); + if (status) + return status; + break; default: goto xdr_error; } |