X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=fs%2Fnfsd%2Fexport.c;h=79de2f38dd63f685351381a637289c8097617ebf;hb=ed94164398c935a42be7b129a478eb19c598b68a;hp=b4d84b579f20cd5da76866586dfa283d64c6669a;hpb=dedeb13f9efb4439a37cf56317c8f25860dd667b;p=deliverable%2Flinux.git diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c index b4d84b579f20..79de2f38dd63 100644 --- a/fs/nfsd/export.c +++ b/fs/nfsd/export.c @@ -954,6 +954,16 @@ __be32 check_nfsd_access(struct svc_export *exp, struct svc_rqst *rqstp) rqstp->rq_cred.cr_flavor == RPC_AUTH_UNIX) return 0; } + + /* If the compound op contains a spo_must_allowed op, + * it will be sent with integrity/protection which + * will have to be expressly allowed on mounts that + * don't support it + */ + + if (nfsd4_spo_must_allow(rqstp)) + return 0; + return nfserr_wrongsec; }