* [PATCH AUTOSEL 6.1 1/9] fs/9p: only translate RWX permissions for plain 9P2000
@ 2024-04-23 11:02 Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 2/9] fs/9p: translate O_TRUNC into OTRUNC Sasha Levin
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Sasha Levin @ 2024-04-23 11:02 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Joakim Sindholt, Eric Van Hensbergen, Sasha Levin, lucho,
asmadeus, v9fs
From: Joakim Sindholt <opensource@zhasha.com>
[ Upstream commit cd25e15e57e68a6b18dc9323047fe9c68b99290b ]
Garbage in plain 9P2000's perm bits is allowed through, which causes it
to be able to set (among others) the suid bit. This was presumably not
the intent since the unix extended bits are handled explicitly and
conditionally on .u.
Signed-off-by: Joakim Sindholt <opensource@zhasha.com>
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/9p/vfs_inode.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
index 5e2657c1dbbe6..a0c5a372dcf62 100644
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -85,7 +85,7 @@ static int p9mode2perm(struct v9fs_session_info *v9ses,
int res;
int mode = stat->mode;
- res = mode & S_IALLUGO;
+ res = mode & 0777; /* S_IRWXUGO */
if (v9fs_proto_dotu(v9ses)) {
if ((mode & P9_DMSETUID) == P9_DMSETUID)
res |= S_ISUID;
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH AUTOSEL 6.1 2/9] fs/9p: translate O_TRUNC into OTRUNC
2024-04-23 11:02 [PATCH AUTOSEL 6.1 1/9] fs/9p: only translate RWX permissions for plain 9P2000 Sasha Levin
@ 2024-04-23 11:02 ` Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 3/9] 9p: explicitly deny setlease attempts Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 7/9] fs/9p: drop inodes immediately on non-.L too Sasha Levin
2 siblings, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2024-04-23 11:02 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Joakim Sindholt, Eric Van Hensbergen, Sasha Levin, lucho,
asmadeus, v9fs
From: Joakim Sindholt <opensource@zhasha.com>
[ Upstream commit 87de39e70503e04ddb58965520b15eb9efa7eef3 ]
This one hits both 9P2000 and .u as it appears v9fs has never translated
the O_TRUNC flag.
Signed-off-by: Joakim Sindholt <opensource@zhasha.com>
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/9p/vfs_inode.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
index a0c5a372dcf62..8f287009545c9 100644
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -181,6 +181,9 @@ int v9fs_uflags2omode(int uflags, int extended)
break;
}
+ if (uflags & O_TRUNC)
+ ret |= P9_OTRUNC;
+
if (extended) {
if (uflags & O_EXCL)
ret |= P9_OEXCL;
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH AUTOSEL 6.1 3/9] 9p: explicitly deny setlease attempts
2024-04-23 11:02 [PATCH AUTOSEL 6.1 1/9] fs/9p: only translate RWX permissions for plain 9P2000 Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 2/9] fs/9p: translate O_TRUNC into OTRUNC Sasha Levin
@ 2024-04-23 11:02 ` Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 7/9] fs/9p: drop inodes immediately on non-.L too Sasha Levin
2 siblings, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2024-04-23 11:02 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Jeff Layton, Eric Van Hensbergen, Sasha Levin, lucho, asmadeus,
v9fs
From: Jeff Layton <jlayton@kernel.org>
[ Upstream commit 7a84602297d36617dbdadeba55a2567031e5165b ]
9p is a remote network protocol, and it doesn't support asynchronous
notifications from the server. Ensure that we don't hand out any leases
since we can't guarantee they'll be broken when a file's contents
change.
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/9p/vfs_file.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fs/9p/vfs_file.c b/fs/9p/vfs_file.c
index aec43ba837992..87222067fe5de 100644
--- a/fs/9p/vfs_file.c
+++ b/fs/9p/vfs_file.c
@@ -667,6 +667,7 @@ const struct file_operations v9fs_file_operations = {
.splice_read = generic_file_splice_read,
.splice_write = iter_file_splice_write,
.fsync = v9fs_file_fsync,
+ .setlease = simple_nosetlease,
};
const struct file_operations v9fs_file_operations_dotl = {
@@ -708,4 +709,5 @@ const struct file_operations v9fs_mmap_file_operations_dotl = {
.splice_read = generic_file_splice_read,
.splice_write = iter_file_splice_write,
.fsync = v9fs_file_fsync_dotl,
+ .setlease = simple_nosetlease,
};
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH AUTOSEL 6.1 7/9] fs/9p: drop inodes immediately on non-.L too
2024-04-23 11:02 [PATCH AUTOSEL 6.1 1/9] fs/9p: only translate RWX permissions for plain 9P2000 Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 2/9] fs/9p: translate O_TRUNC into OTRUNC Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 3/9] 9p: explicitly deny setlease attempts Sasha Levin
@ 2024-04-23 11:02 ` Sasha Levin
2 siblings, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2024-04-23 11:02 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Joakim Sindholt, Eric Van Hensbergen, Sasha Levin, lucho,
asmadeus, v9fs
From: Joakim Sindholt <opensource@zhasha.com>
[ Upstream commit 7fd524b9bd1be210fe79035800f4bd78a41b349f ]
Signed-off-by: Joakim Sindholt <opensource@zhasha.com>
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/9p/vfs_super.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c
index 2d9ee073d12c3..7c35347f1d9be 100644
--- a/fs/9p/vfs_super.c
+++ b/fs/9p/vfs_super.c
@@ -342,6 +342,7 @@ static const struct super_operations v9fs_super_ops = {
.alloc_inode = v9fs_alloc_inode,
.free_inode = v9fs_free_inode,
.statfs = simple_statfs,
+ .drop_inode = v9fs_drop_inode,
.evict_inode = v9fs_evict_inode,
.show_options = v9fs_show_options,
.umount_begin = v9fs_umount_begin,
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-04-23 11:41 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-23 11:02 [PATCH AUTOSEL 6.1 1/9] fs/9p: only translate RWX permissions for plain 9P2000 Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 2/9] fs/9p: translate O_TRUNC into OTRUNC Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 3/9] 9p: explicitly deny setlease attempts Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 6.1 7/9] fs/9p: drop inodes immediately on non-.L too Sasha Levin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox