dir.c (e6305c43eda10ebfd2ad9e35d6e172ccc7bb3695) dir.c (a110343f0d6d41f68b7cf8c00b57a3172c67f816)
1/*
2 FUSE: Filesystem in Userspace
3 Copyright (C) 2001-2006 Miklos Szeredi <miklos@szeredi.hu>
4
5 This program can be distributed under the terms of the GNU GPL.
6 See the file COPYING.
7*/
8

--- 948 unchanged lines hidden (view full) ---

957 if (!err)
958 err = generic_permission(inode, mask, NULL);
959 }
960
961 /* Note: the opposite of the above test does not
962 exist. So if permissions are revoked this won't be
963 noticed immediately, only after the attribute
964 timeout has expired */
1/*
2 FUSE: Filesystem in Userspace
3 Copyright (C) 2001-2006 Miklos Szeredi <miklos@szeredi.hu>
4
5 This program can be distributed under the terms of the GNU GPL.
6 See the file COPYING.
7*/
8

--- 948 unchanged lines hidden (view full) ---

957 if (!err)
958 err = generic_permission(inode, mask, NULL);
959 }
960
961 /* Note: the opposite of the above test does not
962 exist. So if permissions are revoked this won't be
963 noticed immediately, only after the attribute
964 timeout has expired */
965 } else if (mask & (MAY_ACCESS | MAY_CHDIR)) {
965 } else if (mask & MAY_ACCESS) {
966 err = fuse_access(inode, mask);
967 } else if ((mask & MAY_EXEC) && S_ISREG(inode->i_mode)) {
968 if (!(inode->i_mode & S_IXUGO)) {
969 if (refreshed)
970 return -EACCES;
971
972 err = fuse_do_getattr(inode, NULL, NULL);
973 if (!err && !(inode->i_mode & S_IXUGO))

--- 593 unchanged lines hidden ---
966 err = fuse_access(inode, mask);
967 } else if ((mask & MAY_EXEC) && S_ISREG(inode->i_mode)) {
968 if (!(inode->i_mode & S_IXUGO)) {
969 if (refreshed)
970 return -EACCES;
971
972 err = fuse_do_getattr(inode, NULL, NULL);
973 if (!err && !(inode->i_mode & S_IXUGO))

--- 593 unchanged lines hidden ---