Files
termux-packages/packages/deno/0007-disable-unallowed-syscalls.patch
2025-09-07 05:36:53 +00:00

29 lines
725 B
Diff

`setgroups` are only allowed when user is root, i.e. `getuid() == 0`
https://github.com/denoland/deno/issues/19759#issuecomment-2914426954
--- a/ext/process/lib.rs
+++ b/ext/process/lib.rs
@@ -525,7 +525,9 @@
libc::close(src);
}
}
- libc::setgroups(0, std::ptr::null());
+ if libc::getuid() == 0 {
+ libc::setgroups(0, std::ptr::null());
+ }
Ok(())
});
}
@@ -1142,7 +1144,9 @@
#[allow(clippy::undocumented_unsafe_blocks)]
unsafe {
c.pre_exec(|| {
- libc::setgroups(0, std::ptr::null());
+ if libc::getuid() == 0 {
+ libc::setgroups(0, std::ptr::null());
+ }
Ok(())
});
}