diff options
Diffstat (limited to 'kernel/dir.c')
-rw-r--r-- | kernel/dir.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/dir.c b/kernel/dir.c index 26d2dfc..a7a6945 100644 --- a/kernel/dir.c +++ b/kernel/dir.c @@ -552,7 +552,9 @@ static int fuse_permission(struct inode *inode, int mask, struct nameidata *nd) return -EACCES; err = 0; - if (nd->flags & LOOKUP_ACCESS) + if (nd && + ((nd->flags & LOOKUP_ACCESS) || + ((nd->flags & LOOKUP_OPEN) && mode != 0))) err = fuse_access(inode, mask); } return err; |