On Fri, Jun 07, 2013 at 03:12:27PM +0800, Gao feng wrote:
The owner of the /proc/meminfo in container should
be the root user of container.
Signed-off-by: Gao feng <gaofeng(a)cn.fujitsu.com>
---
src/lxc/lxc_fuse.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/lxc/lxc_fuse.c b/src/lxc/lxc_fuse.c
index 32886cd..b98a0d9 100644
--- a/src/lxc/lxc_fuse.c
+++ b/src/lxc/lxc_fuse.c
@@ -48,6 +48,8 @@ static int lxcProcGetattr(const char *path, struct stat *stbuf)
int res;
char *mempath = NULL;
struct stat sb;
+ struct fuse_context *context = fuse_get_context();
+ virDomainDefPtr def = (virDomainDefPtr)context->private_data;
memset(stbuf, 0, sizeof(struct stat));
if (virAsprintf(&mempath, "/proc/%s", path) < 0) {
@@ -66,6 +68,8 @@ static int lxcProcGetattr(const char *path, struct stat *stbuf)
goto cleanup;
}
+ stbuf->st_uid = def->idmap.uidmap ? def->idmap.uidmap[0].target : 0;
+ stbuf->st_gid = def->idmap.gidmap ? def->idmap.gidmap[0].target : 0;
stbuf->st_mode = sb.st_mode;
stbuf->st_nlink = 1;
stbuf->st_blksize = sb.st_blksize;
ACK
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|