From: Denys Vlasenko Date: Thu, 9 Nov 2017 15:06:33 +0000 (+0100) Subject: unshare: -r should map root to user, not the other way around X-Git-Tag: 1_28_0~10 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=1b510900e24459353922a1bc83c0b58bc8bafe1c;p=oweals%2Fbusybox.git unshare: -r should map root to user, not the other way around Signed-off-by: Denys Vlasenko --- diff --git a/util-linux/unshare.c b/util-linux/unshare.c index a4bbb8c9e..7c295da1f 100644 --- a/util-linux/unshare.c +++ b/util-linux/unshare.c @@ -339,7 +339,7 @@ int unshare_main(int argc UNUSED_PARAM, char **argv) } if (opts & OPT_map_root) { - char uidmap_buf[sizeof("%u 0 1") + sizeof(int)*3]; + char uidmap_buf[sizeof("0 %u 1") + sizeof(int)*3]; /* * Since Linux 3.19 unprivileged writing of /proc/self/gid_map @@ -348,9 +348,9 @@ int unshare_main(int argc UNUSED_PARAM, char **argv) * in that user namespace. */ xopen_xwrite_close(PATH_PROC_SETGROUPS, "deny"); - sprintf(uidmap_buf, "%u 0 1", (unsigned)reuid); + sprintf(uidmap_buf, "0 %u 1", (unsigned)reuid); xopen_xwrite_close(PATH_PROC_UIDMAP, uidmap_buf); - sprintf(uidmap_buf, "%u 0 1", (unsigned)regid); + sprintf(uidmap_buf, "0 %u 1", (unsigned)regid); xopen_xwrite_close(PATH_PROC_GIDMAP, uidmap_buf); } else if (setgrp_str) {