mirror of
https://github.com/MeiK2333/river.git
synced 2025-11-04 14:49:40 +08:00
add language: Node
This commit is contained in:
parent
1b1114a5d0
commit
a162ed4e43
4
plugins/js/package-lock.json
generated
4
plugins/js/package-lock.json
generated
@ -1,6 +1,8 @@
|
||||
{
|
||||
"requires": true,
|
||||
"name": "js",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
"esprima": {
|
||||
"version": "4.0.1",
|
||||
|
||||
@ -16,12 +16,14 @@ pub fn gen_rules() -> Vec<SyscallRuleSet> {
|
||||
allow_syscall(libc::SYS_close),
|
||||
allow_syscall(libc::SYS_connect),
|
||||
allow_syscall(libc::SYS_copy_file_range),
|
||||
allow_syscall(libc::SYS_epoll_create1),
|
||||
allow_syscall(libc::SYS_epoll_ctl),
|
||||
allow_syscall(libc::SYS_epoll_pwait),
|
||||
allow_syscall(libc::SYS_dup),
|
||||
allow_syscall(libc::SYS_dup2),
|
||||
allow_syscall(libc::SYS_dup3),
|
||||
allow_syscall(libc::SYS_epoll_create1),
|
||||
allow_syscall(libc::SYS_epoll_ctl),
|
||||
allow_syscall(libc::SYS_epoll_pwait),
|
||||
allow_syscall(libc::SYS_eventfd2),
|
||||
allow_syscall(libc::SYS_epoll_wait),
|
||||
allow_syscall(libc::SYS_execve),
|
||||
allow_syscall(libc::SYS_exit),
|
||||
allow_syscall(libc::SYS_exit_group),
|
||||
|
||||
@ -41,7 +41,7 @@ pub async fn judger(
|
||||
Some(Language::Cpp) => "./a.out",
|
||||
Some(Language::Python) => "/usr/bin/python3.8 main.py",
|
||||
Some(Language::Rust) => "./a.out",
|
||||
Some(Language::Node) => "node main.js",
|
||||
Some(Language::Node) => "/usr/bin/node main.js",
|
||||
Some(Language::TypeScript) => "node main.js",
|
||||
Some(Language::Go) => "./a.out",
|
||||
Some(Language::Java) => "/usr/bin/java -cp . Main",
|
||||
@ -60,7 +60,10 @@ pub async fn judger(
|
||||
let mut runner = process.runner.clone();
|
||||
// 为 Java 虚拟机取消内存限制和 trace(万恶的 JVM)
|
||||
// 看起来虚拟机语言都有同样的问题
|
||||
if request.language == Language::Java as i32 || request.language == Language::Go as i32 {
|
||||
if request.language == Language::Java as i32
|
||||
|| request.language == Language::Go as i32
|
||||
|| request.language == Language::Node as i32
|
||||
{
|
||||
runner.memory_limit = -1;
|
||||
runner.traceme = false;
|
||||
}
|
||||
@ -144,7 +147,7 @@ pub async fn compile(
|
||||
&v,
|
||||
// 编译的资源限制为固定的
|
||||
10000,
|
||||
256 * 1024,
|
||||
1024 * 1024,
|
||||
)?;
|
||||
|
||||
let mut runner = process.runner.clone();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user