diff options
Diffstat (limited to 'sys-fs/fuse/files/fuse-1.4-kernel-2.6.10.patch')
-rw-r--r-- | sys-fs/fuse/files/fuse-1.4-kernel-2.6.10.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/sys-fs/fuse/files/fuse-1.4-kernel-2.6.10.patch b/sys-fs/fuse/files/fuse-1.4-kernel-2.6.10.patch new file mode 100644 index 000000000000..ba129d282d97 --- /dev/null +++ b/sys-fs/fuse/files/fuse-1.4-kernel-2.6.10.patch @@ -0,0 +1,29 @@ +diff -pur fuse-1.4.orig/kernel/dir.c fuse-1.4/kernel/dir.c +--- fuse-1.4.orig/kernel/dir.c 2005-01-02 21:09:09.908015392 +0100 ++++ fuse-1.4/kernel/dir.c 2005-01-02 21:10:21.430142376 +0100 +@@ -417,7 +417,12 @@ static int _fuse_permission(struct inode + if(!(fc->flags & FUSE_ALLOW_OTHER) && current->fsuid != fc->uid) + return -EACCES; + else if(fc->flags & FUSE_DEFAULT_PERMISSIONS) { +- int err = vfs_permission(inode, mask); ++ int err; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) ++ err = vfs_permission(inode, mask); ++#else ++ err = generic_permission(inode, mask, NULL); ++#endif + + /* If permission is denied, try to refresh file + attributes. This is also needed, because the root +@@ -426,7 +431,11 @@ static int _fuse_permission(struct inode + if(err == -EACCES) { + err = fuse_do_getattr(inode); + if(!err) ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) + err = vfs_permission(inode, mask); ++#else ++ err = generic_permission(inode, mask, NULL); ++#endif + } + + /* FIXME: Need some mechanism to revoke permissions: |