diff options
author | Christian Brauner <brauner@kernel.org> | 2023-03-14 12:51:10 +0100 |
---|---|---|
committer | Christian Brauner <brauner@kernel.org> | 2023-03-30 08:51:48 +0200 |
commit | 4f704d9a8352f5c0a8fcdb6213b934630342bd44 (patch) | |
tree | 4952de8ef168d1984708cfb45a8fe89cf2125563 /include/linux/fs.h | |
parent | d98ffa1aca264ce547b9135135f83d81cfe4345f (diff) | |
download | lwn-4f704d9a8352f5c0a8fcdb6213b934630342bd44.tar.gz lwn-4f704d9a8352f5c0a8fcdb6213b934630342bd44.zip |
nfs: use vfs setgid helper
We've aligned setgid behavior over multiple kernel releases. The details
can be found in the following two merge messages:
cf619f891971 ("Merge tag 'fs.ovl.setgid.v6.2')
426b4ca2d6a5 ("Merge tag 'fs.setgid.v6.0')
Consistent setgid stripping behavior is now encapsulated in the
setattr_should_drop_sgid() helper which is used by all filesystems that
strip setgid bits outside of vfs proper. Switch nfs to rely on this
helper as well. Without this patch the setgid stripping tests in
xfstests will fail.
Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Message-Id: <20230313-fs-nfs-setgid-v2-1-9a59f436cfc0@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r-- | include/linux/fs.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index c85916e9f7db..af95b64fc810 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -2675,6 +2675,8 @@ extern struct inode *new_inode(struct super_block *sb); extern void free_inode_nonrcu(struct inode *inode); extern int setattr_should_drop_suidgid(struct mnt_idmap *, struct inode *); extern int file_remove_privs(struct file *); +int setattr_should_drop_sgid(struct mnt_idmap *idmap, + const struct inode *inode); /* * This must be used for allocating filesystems specific inodes to set |