aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/dir.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/dir.c b/kernel/dir.c
index bc69a06..0f01688 100644
--- a/kernel/dir.c
+++ b/kernel/dir.c
@@ -1086,6 +1086,9 @@ static int fuse_setattr(struct dentry *entry, struct iattr *attr)
memset(&inarg, 0, sizeof(inarg));
iattr_to_fattr(attr, &inarg);
+ /* Defend against future expansion of ATTR_FILE use */
+ if (S_ISDIR(inode->i_mode))
+ inarg.valid &= ~FATTR_FH;
req->in.h.opcode = FUSE_SETATTR;
req->in.h.nodeid = get_node_id(inode);
req->in.numargs = 1;