]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
lxc-usernsexec: setgroups() similar to other places shouldn't fail on EPERM 3540/head
authorChristian Brauner <christian.brauner@ubuntu.com>
Thu, 17 Sep 2020 15:44:26 +0000 (17:44 +0200)
committerChristian Brauner <christian.brauner@ubuntu.com>
Thu, 17 Sep 2020 15:46:00 +0000 (17:46 +0200)
FAIL: lxc-tests: lxc-test-usernsexec (1s)
---
as test-userns executing /tmp/autopkgtest.waGEXj/build.Hm3/src/src/tests/lxc-test-usernsexec
uid=1001 gid=1001 name=test-userns subuid=165536 subgid=165536 ver=1:4.0.4-0ubuntu3
lxc-utils=1:4.0.4-0ubuntu3 kver=5.8.0-19-generic
USERNSEXEC=lxc-usernsexec
nouidgid: PASS
myuidgid: FAIL - runtest failed 1
  $ lxc-usernsexec -mu:0:1001:1 -mg:0:1001:1 -- /tmp/autopkgtest.waGEXj/build.Hm3/src/src/tests/lxc-test-usernsexec inside f0
  lxc 20200914222824.562 ERROR    utils - utils.c:lxc_setgroups:1363 - Operation not permitted - Failed to setgroups()
  kid 73112 is gone 1
subuidgid: PASS
bothsets: PASS
mismatch: PASS
ERRORS: myuidgid
---

Reported-by: Seth Forshee <seth.forshee@canonical.com>
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/cmd/lxc_usernsexec.c

index 5c12dad3b856a5b33db1f3a420855c63e64ee2a3..c22a33bb4134a43e4d0bdd626aedbc8a56d8ec22 100644 (file)
@@ -88,7 +88,7 @@ static int do_child(void *vargv)
        int ret;
        char **argv = (char **)vargv;
 
-       if (!lxc_setgroups(0, NULL))
+       if (!lxc_setgroups(0, NULL) && errno != EPERM)
                return -1;
 
        /* Assume we want to become root */