summaryrefslogtreecommitdiffstats
path: root/Tools
diff options
context:
space:
mode:
authorChristian Heimes <christian@python.org>2022-03-08 11:17:30 (GMT)
committerGitHub <noreply@github.com>2022-03-08 11:17:30 (GMT)
commit5081e78efde901556398615eb477c63c836686e5 (patch)
tree5be2667672a5d7a1df2b32b5a215546d1b5a5507 /Tools
parent36dd7396fcd26d8bf9919d536d05d7000becbe5b (diff)
downloadcpython-5081e78efde901556398615eb477c63c836686e5.zip
cpython-5081e78efde901556398615eb477c63c836686e5.tar.gz
cpython-5081e78efde901556398615eb477c63c836686e5.tar.bz2
bpo-40280: Block more non-working syscalls in Emscripten (GH-31757)
- getgroups always fails. - geteuid and getegid always return 0 (root), which confuse tarfile and tests. - hardlinks (link, linkat) always fails. - non-encodable file names are not supported by NODERAWFS layer. - mark more tests with dependency on subprocess and multiprocessing. Mocking does not work if the module fails to import.
Diffstat (limited to 'Tools')
-rw-r--r--Tools/wasm/config.site-wasm32-emscripten13
1 files changed, 12 insertions, 1 deletions
diff --git a/Tools/wasm/config.site-wasm32-emscripten b/Tools/wasm/config.site-wasm32-emscripten
index 98991b4..f85024e 100644
--- a/Tools/wasm/config.site-wasm32-emscripten
+++ b/Tools/wasm/config.site-wasm32-emscripten
@@ -86,11 +86,22 @@ ac_cv_func_mkfifoat=no
ac_cv_func_mknod=no
ac_cv_func_mknodat=no
-# always fails with permission error
+# always fails with permission or not implemented error
+ac_cv_func_getgroups=no
ac_cv_func_setgroups=no
ac_cv_func_setresuid=no
ac_cv_func_setresgid=no
+# Emscripten geteuid() / getegid() always return 0 (root), which breaks
+# assumption in tarfile module and some tests.
+ac_cv_func_getegid=no
+ac_cv_func_geteuid=no
+
+# Emscripten does not support hard links, always fails with errno 34
+# "Too many links". See emscripten_syscall_stubs.c
+ac_cv_func_link=no
+ac_cv_func_linkat=no
+
# alarm signal is not delivered, may need a callback into the event loop?
ac_cv_func_alarm=no