mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 08:58:07 +00:00
vboxsf: Convert to new uid/gid option parsing helpers
Convert to new uid/gid option parsing helpers From: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Eric Sandeen <sandeen@redhat.com> Link: https://lore.kernel.org/r/58862d35-a026-4866-ab7f-fa09dda8ac1f@redhat.com Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
b548291690
commit
da99d45bd5
1 changed files with 4 additions and 12 deletions
|
@ -41,8 +41,8 @@ enum { opt_nls, opt_uid, opt_gid, opt_ttl, opt_dmode, opt_fmode,
|
||||||
|
|
||||||
static const struct fs_parameter_spec vboxsf_fs_parameters[] = {
|
static const struct fs_parameter_spec vboxsf_fs_parameters[] = {
|
||||||
fsparam_string ("nls", opt_nls),
|
fsparam_string ("nls", opt_nls),
|
||||||
fsparam_u32 ("uid", opt_uid),
|
fsparam_uid ("uid", opt_uid),
|
||||||
fsparam_u32 ("gid", opt_gid),
|
fsparam_gid ("gid", opt_gid),
|
||||||
fsparam_u32 ("ttl", opt_ttl),
|
fsparam_u32 ("ttl", opt_ttl),
|
||||||
fsparam_u32oct ("dmode", opt_dmode),
|
fsparam_u32oct ("dmode", opt_dmode),
|
||||||
fsparam_u32oct ("fmode", opt_fmode),
|
fsparam_u32oct ("fmode", opt_fmode),
|
||||||
|
@ -55,8 +55,6 @@ static int vboxsf_parse_param(struct fs_context *fc, struct fs_parameter *param)
|
||||||
{
|
{
|
||||||
struct vboxsf_fs_context *ctx = fc->fs_private;
|
struct vboxsf_fs_context *ctx = fc->fs_private;
|
||||||
struct fs_parse_result result;
|
struct fs_parse_result result;
|
||||||
kuid_t uid;
|
|
||||||
kgid_t gid;
|
|
||||||
int opt;
|
int opt;
|
||||||
|
|
||||||
opt = fs_parse(fc, vboxsf_fs_parameters, param, &result);
|
opt = fs_parse(fc, vboxsf_fs_parameters, param, &result);
|
||||||
|
@ -73,16 +71,10 @@ static int vboxsf_parse_param(struct fs_context *fc, struct fs_parameter *param)
|
||||||
param->string = NULL;
|
param->string = NULL;
|
||||||
break;
|
break;
|
||||||
case opt_uid:
|
case opt_uid:
|
||||||
uid = make_kuid(current_user_ns(), result.uint_32);
|
ctx->o.uid = result.uid;
|
||||||
if (!uid_valid(uid))
|
|
||||||
return -EINVAL;
|
|
||||||
ctx->o.uid = uid;
|
|
||||||
break;
|
break;
|
||||||
case opt_gid:
|
case opt_gid:
|
||||||
gid = make_kgid(current_user_ns(), result.uint_32);
|
ctx->o.gid = result.gid;
|
||||||
if (!gid_valid(gid))
|
|
||||||
return -EINVAL;
|
|
||||||
ctx->o.gid = gid;
|
|
||||||
break;
|
break;
|
||||||
case opt_ttl:
|
case opt_ttl:
|
||||||
ctx->o.ttl = msecs_to_jiffies(result.uint_32);
|
ctx->o.ttl = msecs_to_jiffies(result.uint_32);
|
||||||
|
|
Loading…
Reference in a new issue