summaryrefslogtreecommitdiffhomepage
path: root/auto/isolation
diff options
context:
space:
mode:
authorTiago Natel <t.nateldemoura@f5.com>2019-12-06 16:52:50 +0000
committerTiago Natel <t.nateldemoura@f5.com>2019-12-06 16:52:50 +0000
commit411daeaa532c47328ab901a7ba9ea5dcd876be06 (patch)
tree90774780cf42278a5cb148992604e8fdb864f54b /auto/isolation
parented2492a66afdf578d1e4f99dc098ab685607b3ba (diff)
downloadunit-411daeaa532c47328ab901a7ba9ea5dcd876be06.tar.gz
unit-411daeaa532c47328ab901a7ba9ea5dcd876be06.tar.bz2
Isolation: allowed the use of credentials with unpriv userns.
The setuid/setgid syscalls requires root capabilities but if the kernel supports unprivileged user namespace then the child process has the full set of capabilities in the new namespace, then we can allow setting "user" and "group" in such cases (this is a common security use case). Tests were added to ensure user gets meaningful error messages for uid/gid mapping misconfigurations.
Diffstat (limited to 'auto/isolation')
-rw-r--r--auto/isolation5
1 files changed, 5 insertions, 0 deletions
diff --git a/auto/isolation b/auto/isolation
index c26a4991..d231de12 100644
--- a/auto/isolation
+++ b/auto/isolation
@@ -5,6 +5,7 @@
NXT_ISOLATION=NO
NXT_HAVE_CLONE=NO
+NXT_HAVE_CLONE_NEWUSER=NO
nsflags="USER NS PID NET UTS CGROUP"
@@ -42,6 +43,10 @@ if [ $nxt_found = yes ]; then
. auto/feature
if [ $nxt_found = yes ]; then
+ if [ $flag = "USER" ]; then
+ NXT_HAVE_CLONE_NEWUSER=YES
+ fi
+
if [ "$NXT_ISOLATION" = "NO" ]; then
NXT_ISOLATION=$flag
else