nfsd: remove redundant zero-length check from create
authorJ. Bruce Fields <bfields@redhat.com>
Tue, 19 Jul 2016 21:25:42 +0000 (17:25 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Thu, 4 Aug 2016 21:11:47 +0000 (17:11 -0400)
lookup_one_len already has this check.

The only effect of this patch is to return access instead of perm in the
0-length-filename case.  I actually prefer nfserr_perm (or _inval?), but
I doubt anyone cares.

The isdotent check seems redundant too, but I worry that some client
might actually care about that strange nfserr_exist error.

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfsproc.c
fs/nfsd/vfs.c

index 4cd78ef4c95c4def33831856e863a36fc850ff59..6722fe52ea1538d756261a273819ebfe037c0a7f 100644 (file)
@@ -251,9 +251,6 @@ nfsd_proc_create(struct svc_rqst *rqstp, struct nfsd_createargs *argp,
 
        /* Check for NFSD_MAY_WRITE in nfsd_create if necessary */
 
-       nfserr = nfserr_acces;
-       if (!argp->len)
-               goto done;
        nfserr = nfserr_exist;
        if (isdotent(argp->name, argp->len))
                goto done;
index fda4f86161f8cbcd5a479e1e134e455d2d1aafac..fba8e7e521e065e6d698717abb147a65469ba0d0 100644 (file)
@@ -1154,9 +1154,6 @@ nfsd_create(struct svc_rqst *rqstp, struct svc_fh *fhp,
        __be32          err2;
        int             host_err;
 
-       err = nfserr_perm;
-       if (!flen)
-               goto out;
        err = nfserr_exist;
        if (isdotent(fname, flen))
                goto out;