[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9672a3006f0f8424c09e0f00dcb8ecaa1c42abb6.camel@kernel.org>
Date: Fri, 19 May 2023 13:26:56 -0400
From: Jeff Layton <jlayton@...nel.org>
To: David Howells <dhowells@...hat.com>, linux-cachefs@...hat.com
Cc: linux-erofs@...ts.ozlabs.org, linux-fsdevel@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] cachefiles: Allow the cache to be non-root
On Fri, 2023-05-19 at 18:21 +0100, David Howells wrote:
>
> Set mode 0600 on files in the cache so that cachefilesd can run as an
> unprivileged user rather than leaving the files all with 0. Directories
> are already set to 0700.
>
> Userspace then needs to set the uid and gid before issuing the "bind"
> command and the cache must've been chown'd to those IDs.
>
> Signed-off-by: David Howells <dhowells@...hat.com>
> cc: David Howells <dhowells@...hat.com>
> cc: Jeff Layton <jlayton@...nel.org>
> cc: linux-cachefs@...hat.com
> cc: linux-erofs@...ts.ozlabs.org
> cc: linux-fsdevel@...r.kernel.org
> ---
> fs/cachefiles/namei.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/cachefiles/namei.c b/fs/cachefiles/namei.c
> index 82219a8f6084..66482c193e86 100644
> --- a/fs/cachefiles/namei.c
> +++ b/fs/cachefiles/namei.c
> @@ -451,7 +451,8 @@ struct file *cachefiles_create_tmpfile(struct cachefiles_object *object)
>
> ret = cachefiles_inject_write_error();
> if (ret == 0) {
> - file = vfs_tmpfile_open(&nop_mnt_idmap, &parentpath, S_IFREG,
> + file = vfs_tmpfile_open(&nop_mnt_idmap, &parentpath,
> + S_IFREG | 0600,
> O_RDWR | O_LARGEFILE | O_DIRECT,
> cache->cache_cred);
> ret = PTR_ERR_OR_ZERO(file);
>
Seems safe enough, and if it helps allow this to run unprivileged then:
Reviewed-by: Jeff Layton <jlayton@...nel.org>
Powered by blists - more mailing lists