]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/coda/dir.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
[linux-2.6-omap-h63xx.git] / fs / coda / dir.c
index 3d2580e00a3e272e0cfe04103c98466e2daa15e7..75b1fa90b2cb8ee205efc96bbbb8a7c71fc9a1e1 100644 (file)
@@ -137,13 +137,18 @@ exit:
 }
 
 
-int coda_permission(struct inode *inode, int mask, struct nameidata *nd)
+int coda_permission(struct inode *inode, int mask)
 {
         int error = 0;
+
+       mask &= MAY_READ | MAY_WRITE | MAY_EXEC;
  
        if (!mask)
                return 0; 
 
+       if ((mask & MAY_EXEC) && !execute_ok(inode))
+               return -EACCES;
+
        lock_kernel();
 
        if (coda_cache_check(inode, mask))