mirror of
https://github.com/lkl/linux.git
synced 2025-12-19 16:13:19 +09:00
userns: Convert hpfs to use kuid and kgid where appropriate
Cc: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz> Acked-by: Serge Hallyn <serge.hallyn@canonical.com> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
This commit is contained in:
@@ -251,7 +251,7 @@ static const match_table_t tokens = {
|
||||
{Opt_err, NULL},
|
||||
};
|
||||
|
||||
static int parse_opts(char *opts, uid_t *uid, gid_t *gid, umode_t *umask,
|
||||
static int parse_opts(char *opts, kuid_t *uid, kgid_t *gid, umode_t *umask,
|
||||
int *lowercase, int *eas, int *chk, int *errs,
|
||||
int *chkdsk, int *timeshift)
|
||||
{
|
||||
@@ -276,12 +276,16 @@ static int parse_opts(char *opts, uid_t *uid, gid_t *gid, umode_t *umask,
|
||||
case Opt_uid:
|
||||
if (match_int(args, &option))
|
||||
return 0;
|
||||
*uid = option;
|
||||
*uid = make_kuid(current_user_ns(), option);
|
||||
if (!uid_valid(*uid))
|
||||
return 0;
|
||||
break;
|
||||
case Opt_gid:
|
||||
if (match_int(args, &option))
|
||||
return 0;
|
||||
*gid = option;
|
||||
*gid = make_kgid(current_user_ns(), option);
|
||||
if (!gid_valid(*gid))
|
||||
return 0;
|
||||
break;
|
||||
case Opt_umask:
|
||||
if (match_octal(args, &option))
|
||||
@@ -378,8 +382,8 @@ HPFS filesystem options:\n\
|
||||
|
||||
static int hpfs_remount_fs(struct super_block *s, int *flags, char *data)
|
||||
{
|
||||
uid_t uid;
|
||||
gid_t gid;
|
||||
kuid_t uid;
|
||||
kgid_t gid;
|
||||
umode_t umask;
|
||||
int lowercase, eas, chk, errs, chkdsk, timeshift;
|
||||
int o;
|
||||
@@ -455,8 +459,8 @@ static int hpfs_fill_super(struct super_block *s, void *options, int silent)
|
||||
struct hpfs_sb_info *sbi;
|
||||
struct inode *root;
|
||||
|
||||
uid_t uid;
|
||||
gid_t gid;
|
||||
kuid_t uid;
|
||||
kgid_t gid;
|
||||
umode_t umask;
|
||||
int lowercase, eas, chk, errs, chkdsk, timeshift;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user