diff options
author | Miklos Szeredi <miklos@szeredi.hu> | 2005-01-13 12:11:49 +0000 |
---|---|---|
committer | Miklos Szeredi <miklos@szeredi.hu> | 2005-01-13 12:11:49 +0000 |
commit | 9ed69ba6898c5b1bdceddcf96bf3d92ba943892d (patch) | |
tree | 5bf0a4281f2a00b4b543f93115f1a02ffda81c1f /kernel/dir.c | |
parent | 4fcbff6cf3006745845e168537a8bdfaf73722f0 (diff) | |
download | libfuse-9ed69ba6898c5b1bdceddcf96bf3d92ba943892d.tar.gz |
fix
Diffstat (limited to 'kernel/dir.c')
-rw-r--r-- | kernel/dir.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/dir.c b/kernel/dir.c index e07ea79..6d968ed 100644 --- a/kernel/dir.c +++ b/kernel/dir.c @@ -438,7 +438,7 @@ static int fuse_revalidate(struct dentry *entry) if (!(fc->flags & FUSE_ALLOW_OTHER) && current->fsuid != fc->user_id && (!(fc->flags & FUSE_ALLOW_ROOT) || - current->fsuid != 0)) + !capable(CAP_DAC_OVERRIDE))) return -EACCES; } else if (time_before_eq(jiffies, fi->i_time)) return 0; @@ -451,7 +451,7 @@ static int fuse_permission(struct inode *inode, int mask, struct nameidata *nd) struct fuse_conn *fc = get_fuse_conn(inode); if (!(fc->flags & FUSE_ALLOW_OTHER) && current->fsuid != fc->user_id && - (!(fc->flags & FUSE_ALLOW_ROOT) || current->fsuid != 0)) + (!(fc->flags & FUSE_ALLOW_ROOT) || !capable(CAP_DAC_OVERRIDE))) return -EACCES; else if (fc->flags & FUSE_DEFAULT_PERMISSIONS) { #ifdef KERNEL_2_6_10_PLUS |