]> err.no Git - linux-2.6/blobdiff - fs/nfsd/nfsfh.c
Pull acpi-debug into release branch
[linux-2.6] / fs / nfsd / nfsfh.c
index d5fe392b14fb0767ffb352f82e1c48cfbf5ac823..0eb464a39aaeb502e0614569ff81208e3226b120 100644 (file)
@@ -249,13 +249,19 @@ fh_verify(struct svc_rqst *rqstp, struct svc_fh *fhp, int type, int access)
        if (error)
                goto out;
 
-       /* Check security flavor */
-       error = check_nfsd_access(exp, rqstp);
-       if (error)
-               goto out;
+       if (!(access & MAY_LOCK)) {
+               /*
+                * pseudoflavor restrictions are not enforced on NLM,
+                * which clients virtually always use auth_sys for,
+                * even while using RPCSEC_GSS for NFS.
+                */
+               error = check_nfsd_access(exp, rqstp);
+               if (error)
+                       goto out;
+       }
 
        /* Finally, check access permissions. */
-       error = nfsd_permission(exp, dentry, access);
+       error = nfsd_permission(rqstp, exp, dentry, access);
 
        if (error) {
                dprintk("fh_verify: %s/%s permission failure, "