aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/nfsd/nfs4proc.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
index e8158741e8b5..eb8c1337d9ba 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -198,6 +198,11 @@ nfsd4_open(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open
198 if (status) 198 if (status)
199 goto out; 199 goto out;
200 switch (open->op_claim_type) { 200 switch (open->op_claim_type) {
201 case NFS4_OPEN_CLAIM_DELEGATE_CUR:
202 status = nfserr_inval;
203 if (open->op_create)
204 goto out;
205 /* fall through */
201 case NFS4_OPEN_CLAIM_NULL: 206 case NFS4_OPEN_CLAIM_NULL:
202 /* 207 /*
203 * (1) set CURRENT_FH to the file being opened, 208 * (1) set CURRENT_FH to the file being opened,
@@ -220,7 +225,6 @@ nfsd4_open(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open
220 if (status) 225 if (status)
221 goto out; 226 goto out;
222 break; 227 break;
223 case NFS4_OPEN_CLAIM_DELEGATE_CUR:
224 case NFS4_OPEN_CLAIM_DELEGATE_PREV: 228 case NFS4_OPEN_CLAIM_DELEGATE_PREV:
225 printk("NFSD: unsupported OPEN claim type %d\n", 229 printk("NFSD: unsupported OPEN claim type %d\n",
226 open->op_claim_type); 230 open->op_claim_type);