summaryrefslogtreecommitdiff
path: root/fs/nfsd/vfs.c
diff options
context:
space:
mode:
authorJohn Stultz <john.stultz@linaro.org>2011-11-15 15:10:36 -0800
committerJohn Stultz <john.stultz@linaro.org>2011-11-15 15:10:36 -0800
commit4327974639c4d7f8688f564081956f8f79ef053c (patch)
tree0ca57c56b2f76a39f476e8f22b0112aa566b3a86 /fs/nfsd/vfs.c
parentc3e5127312f97482a6a09c0df602c726675eff5b (diff)
parentf6b252b6b92671d2633008408c06d35c26e55ecf (diff)
Merge branch 'upstream/linaro-3.1' into linaro-android-3.1-agreen-rebase
Diffstat (limited to 'fs/nfsd/vfs.c')
-rw-r--r--fs/nfsd/vfs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
index fd0acca5370..acf88aea211 100644
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
@@ -2114,7 +2114,8 @@ nfsd_permission(struct svc_rqst *rqstp, struct svc_export *exp,
/* Allow read access to binaries even when mode 111 */
if (err == -EACCES && S_ISREG(inode->i_mode) &&
- acc == (NFSD_MAY_READ | NFSD_MAY_OWNER_OVERRIDE))
+ (acc == (NFSD_MAY_READ | NFSD_MAY_OWNER_OVERRIDE) ||
+ acc == (NFSD_MAY_READ | NFSD_MAY_READ_IF_EXEC)))
err = inode_permission(inode, MAY_EXEC);
return err? nfserrno(err) : 0;