[lxc-devel] [PATCH] Cast to gid_t to fix android build failure

Stéphane Graber stgraber at ubuntu.com
Mon Jun 30 19:04:37 UTC 2014


stat.st_gid is unsigned long in bionic instead of the expected gid_t, so
just cast it to gid_t.

Signed-off-by: Stéphane Graber <stgraber at ubuntu.com>
---
 src/lxc/conf.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lxc/conf.c b/src/lxc/conf.c
index 70f57af..dd92dae 100644
--- a/src/lxc/conf.c
+++ b/src/lxc/conf.c
@@ -3602,8 +3602,8 @@ int chown_mapped_root(char *path, struct lxc_conf *conf)
 		}
 
 		// "g:pathgid:rootgid+pathgid:1"
-		ret = snprintf(map4, 100, "g:%d:%d:1", sb.st_gid,
-				rootgid + sb.st_gid);
+		ret = snprintf(map4, 100, "g:%d:%d:1", (gid_t)sb.st_gid,
+				rootgid + (gid_t)sb.st_gid);
 		if (ret < 0 || ret >= 100) {
 			ERROR("Error gid printing map string");
 			return -1;
@@ -3617,7 +3617,7 @@ int chown_mapped_root(char *path, struct lxc_conf *conf)
 		}
 
 		// "0:pathgid" (chown)
-		ret = snprintf(ugid, 100, "0:%d", sb.st_gid);
+		ret = snprintf(ugid, 100, "0:%d", (gid_t)sb.st_gid);
 		if (ret < 0 || ret >= 100) {
 			ERROR("Error owner printing format string for chown");
 			return -1;
-- 
1.9.1



More information about the lxc-devel mailing list