]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
ceph: Convert kuids and kgids before printing them.
authorEric W. Biederman <ebiederm@xmission.com>
Thu, 31 Jan 2013 12:05:39 +0000 (04:05 -0800)
committerEric W. Biederman <ebiederm@xmission.com>
Tue, 12 Feb 2013 11:19:27 +0000 (03:19 -0800)
Before printing kuid and kgids values convert them into
the initial user namespace.

Cc: Sage Weil <sage@inktank.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
fs/ceph/caps.c
fs/ceph/inode.c

index 39eb4665b122e0705461f4412b6f53faab1efb34..ae2be696eb5b32e5e2cbad2a591582c3d802aab5 100644 (file)
@@ -2362,7 +2362,8 @@ static void handle_cap_grant(struct inode *inode, struct ceph_mds_caps *grant,
                inode->i_uid = make_kuid(&init_user_ns, le32_to_cpu(grant->uid));
                inode->i_gid = make_kgid(&init_user_ns, le32_to_cpu(grant->gid));
                dout("%p mode 0%o uid.gid %d.%d\n", inode, inode->i_mode,
-                    inode->i_uid, inode->i_gid);
+                    from_kuid(&init_user_ns, inode->i_uid),
+                    from_kgid(&init_user_ns, inode->i_gid));
        }
 
        if ((issued & CEPH_CAP_LINK_EXCL) == 0)
index 40e0787022e9cfe4a93437c0ea7c0b214ab8b49a..d45895f4a04dd466de53e5a6b1dfbcb01608824c 100644 (file)
@@ -615,7 +615,8 @@ static int fill_inode(struct inode *inode,
                inode->i_uid = make_kuid(&init_user_ns, le32_to_cpu(info->uid));
                inode->i_gid = make_kgid(&init_user_ns, le32_to_cpu(info->gid));
                dout("%p mode 0%o uid.gid %d.%d\n", inode, inode->i_mode,
-                    inode->i_uid, inode->i_gid);
+                    from_kuid(&init_user_ns, inode->i_uid),
+                    from_kgid(&init_user_ns, inode->i_gid));
        }
 
        if ((issued & CEPH_CAP_LINK_EXCL) == 0)
@@ -1565,7 +1566,8 @@ int ceph_setattr(struct dentry *dentry, struct iattr *attr)
 
        if (ia_valid & ATTR_UID) {
                dout("setattr %p uid %d -> %d\n", inode,
-                    inode->i_uid, attr->ia_uid);
+                    from_kuid(&init_user_ns, inode->i_uid),
+                    from_kuid(&init_user_ns, attr->ia_uid));
                if (issued & CEPH_CAP_AUTH_EXCL) {
                        inode->i_uid = attr->ia_uid;
                        dirtied |= CEPH_CAP_AUTH_EXCL;
@@ -1579,7 +1581,8 @@ int ceph_setattr(struct dentry *dentry, struct iattr *attr)
        }
        if (ia_valid & ATTR_GID) {
                dout("setattr %p gid %d -> %d\n", inode,
-                    inode->i_gid, attr->ia_gid);
+                    from_kgid(&init_user_ns, inode->i_gid),
+                    from_kgid(&init_user_ns, attr->ia_gid));
                if (issued & CEPH_CAP_AUTH_EXCL) {
                        inode->i_gid = attr->ia_gid;
                        dirtied |= CEPH_CAP_AUTH_EXCL;