aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs/inode.c
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2013-02-06 04:53:25 -0500
committerEric W. Biederman <ebiederm@xmission.com>2013-02-13 10:28:51 -0500
commit4a2c8cf56953a6ebe3c8671433607b7f96f200d5 (patch)
tree307523cb5ac706ab182cd2942a47895dc1647373 /fs/cifs/inode.c
parent6d4a083205c27bc2e2a1c03dff4acf2fe457d1c4 (diff)
cifs: Convert struct cifs_fattr to use kuid and kgids
In cifs_unix_to_basic_fattr only update the cifs_fattr with an id if it is valid after conversion. Cc: Steve French <smfrench@gmail.com> Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'fs/cifs/inode.c')
-rw-r--r--fs/cifs/inode.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c
index 737643940540..9638233964fc 100644
--- a/fs/cifs/inode.c
+++ b/fs/cifs/inode.c
@@ -247,15 +247,21 @@ cifs_unix_basic_to_fattr(struct cifs_fattr *fattr, FILE_UNIX_BASIC_INFO *info,
247 fattr->cf_uid = cifs_sb->mnt_uid; 247 fattr->cf_uid = cifs_sb->mnt_uid;
248 if (!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_UID)) { 248 if (!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_UID)) {
249 u64 id = le64_to_cpu(info->Uid); 249 u64 id = le64_to_cpu(info->Uid);
250 if (id < ((uid_t)-1)) 250 if (id < ((uid_t)-1)) {
251 fattr->cf_uid = id; 251 kuid_t uid = make_kuid(&init_user_ns, id);
252 if (uid_valid(uid))
253 fattr->cf_uid = uid;
254 }
252 } 255 }
253 256
254 fattr->cf_gid = cifs_sb->mnt_gid; 257 fattr->cf_gid = cifs_sb->mnt_gid;
255 if (!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_GID)) { 258 if (!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_GID)) {
256 u64 id = le64_to_cpu(info->Gid); 259 u64 id = le64_to_cpu(info->Gid);
257 if (id < ((gid_t)-1)) 260 if (id < ((gid_t)-1)) {
258 fattr->cf_gid = id; 261 kgid_t gid = make_kgid(&init_user_ns, id);
262 if (gid_valid(gid))
263 fattr->cf_gid = gid;
264 }
259 } 265 }
260 266
261 fattr->cf_nlink = le64_to_cpu(info->Nlinks); 267 fattr->cf_nlink = le64_to_cpu(info->Nlinks);