mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
syscall: fix skipping some tests on Linux
The kernel knob /proc/sys/kernel/unprivileged_userns_clone is only available in Debian (and Ubuntu) kernels, so if the tests are run on e.g. Fedora, skipUnprivilegedUserClone() skips a lot of tests. Modify it to treat ENOENT as "it should work". Change-Id: I959201ede139ede989cc8ab646c9bf51e0539ada Reviewed-on: https://go-review.googlesource.com/c/go/+/417694 TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com> Run-TryBot: Kirill Kolyshkin <kolyshkin@gmail.com> Reviewed-by: Heschi Kreinick <heschi@google.com> Run-TryBot: Ian Lance Taylor <iant@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com>
This commit is contained in:
parent
32964f9dce
commit
a0f05823e4
1 changed files with 4 additions and 0 deletions
|
|
@ -65,6 +65,10 @@ func skipUnprivilegedUserClone(t *testing.T) {
|
|||
// Skip the test if the sysctl that prevents unprivileged user
|
||||
// from creating user namespaces is enabled.
|
||||
data, errRead := os.ReadFile("/proc/sys/kernel/unprivileged_userns_clone")
|
||||
if os.IsNotExist(errRead) {
|
||||
// This file is only available in some Debian/Ubuntu kernels.
|
||||
return
|
||||
}
|
||||
if errRead != nil || len(data) < 1 || data[0] == '0' {
|
||||
t.Skip("kernel prohibits user namespace in unprivileged process")
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue