Judger
A secure and efficient sandboxed code execution engine written in Rust. Ideal for online judges, educational platforms, and other systems requiring isolated execution of untrusted code.
Features
- Resource Limiting: Enforce time and memory limits on the executed process.
- Secure Sandboxing: Utilizes Linux namespaces and seccomp for strong process isolation and system call filtering.
- Flexible Configuration: Easily configure limits, system call policies, and file access.
- Cross-platform: Written in Rust for reliable and efficient execution.
Getting Started
Prerequisites
- Rust toolchain (latest stable recommended)
- Linux environment (for seccomp and namespace features)
Installation
You can install judger from Crates.io:
Or, you can build it from the source:
Example
Here is a simple example of how to use judger to run a command with resource limits:
Make sure to add judger to your Cargo.toml:
[]
= "0.1"
Then, on your main.rs:
use ;
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit a pull request or open an issue.