]> git.proxmox.com Git - mirror_lxc.git/commitdiff
conf.c: Cast st_uid and st_gid to int
authorStéphane Graber <stgraber@ubuntu.com>
Tue, 15 Jan 2013 17:44:50 +0000 (12:44 -0500)
committerStéphane Graber <stgraber@ubuntu.com>
Tue, 15 Jan 2013 17:57:40 +0000 (12:57 -0500)
In eglibc st_uid and st_gid are defined as unsigned integers, in bionic those
are defined as unsigned long (which is inconsistent with the kernel's
defintion that's uint_32).

To workaround this problem, simply cast those two to int.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
src/lxc/conf.c

index 4eb3eeb79dc48634740ef66674613ddd146ab84e..65cc2dccb5e6019e097c2036202be13d63d139bf 100644 (file)
@@ -2617,7 +2617,7 @@ static int uid_shift_file(char *path, struct lxc_conf *c)
        newuid = shiftid(c, statbuf.st_uid, ID_TYPE_UID);
        newgid = shiftid(c, statbuf.st_gid, ID_TYPE_GID);
        if (newuid != statbuf.st_uid || newgid != statbuf.st_gid) {
-               DEBUG("chowning %s from %d:%d to %d:%d\n", path, statbuf.st_uid, statbuf.st_gid, newuid, newgid);
+               DEBUG("chowning %s from %d:%d to %d:%d\n", path, (int)statbuf.st_uid, (int)statbuf.st_gid, newuid, newgid);
                if (chown(path, newuid, newgid)) {
                        SYSERROR("chown(%s)", path);
                        return -1;