From 898b0a93af22b62fa543874537aecfe6584071e2 Mon Sep 17 00:00:00 2001 From: Dave Hansen Date: Tue, 16 Oct 2007 23:31:14 -0700 Subject: [PATCH] --- yaml --- r: 70772 b: refs/heads/master c: b41572e929221b0d87f529106cdf12185ee84bca h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/namei.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index b990856d0d0b..f80304f97309 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ce8d2cdf3d2b73e346c82e6f0a46da331df6364c +refs/heads/master: b41572e929221b0d87f529106cdf12185ee84bca diff --git a/trunk/fs/namei.c b/trunk/fs/namei.c index 2792e0ca01d4..a29bb0f40ed5 100644 --- a/trunk/fs/namei.c +++ b/trunk/fs/namei.c @@ -1604,10 +1604,6 @@ int may_open(struct nameidata *nd, int acc_mode, int flag) if (S_ISDIR(inode->i_mode) && (flag & FMODE_WRITE)) return -EISDIR; - error = vfs_permission(nd, acc_mode); - if (error) - return error; - /* * FIFO's, sockets and device files are special: they don't * actually live on the filesystem itself, and as such you @@ -1622,6 +1618,10 @@ int may_open(struct nameidata *nd, int acc_mode, int flag) flag &= ~O_TRUNC; } else if (IS_RDONLY(inode) && (flag & FMODE_WRITE)) return -EROFS; + + error = vfs_permission(nd, acc_mode); + if (error) + return error; /* * An append-only file must be opened in append mode for writing. */