projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
6b9ccee
)
hfs: don't allow mounting over .../rsrc
author
Al Viro
<viro@zeniv.linux.org.uk>
Mon, 30 Apr 2018 23:52:18 +0000
(19:52 -0400)
committer
Al Viro
<viro@zeniv.linux.org.uk>
Tue, 22 May 2018 18:28:00 +0000
(14:28 -0400)
That's one case when unlink() destroys a subtree, thanks to "resource
fork" idiocy. We might forcibly evict that shit on unlink(2), but
for now let's just disallow overmounting; as it is, anything that
plays games with those would leak mounts.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/hfs/inode.c
patch
|
blob
|
history
diff --git
a/fs/hfs/inode.c
b/fs/hfs/inode.c
index
0612fa3
..
b3309b8
100644
(file)
--- a/
fs/hfs/inode.c
+++ b/
fs/hfs/inode.c
@@
-543,6
+543,7
@@
static struct dentry *hfs_file_lookup(struct inode *dir, struct dentry *dentry,
igrab(dir);
hlist_add_fake(&inode->i_hash);
mark_inode_dirty(inode);
+ dont_mount(dentry);
out:
return d_splice_alias(inode, dentry);
}