Skip to content
This repository was archived by the owner on Mar 28, 2024. It is now read-only.

Latest commit

 

History

History
46 lines (38 loc) · 888 Bytes

README.md

File metadata and controls

46 lines (38 loc) · 888 Bytes

Code executor

An extendible remote code execution webserver.

  • Use the config file
  • Re-write in Rust
  • Dockerize and use Kuberenetes for load balancing
  • Find all the possible exploits
  • Allow to ban keywords (say to forbid using certain imports)
  • Make sure that containers are completely disconnected from the internet.

Docker

docker build -t code-playground .
docker run -d --restart unless-stopped -p 4242:4242 --name code-playground code-playground
docker stop code-playground
docker rm code-playground

API

A clients incoming request looks as follows:

{
	"langauge": "c",
	"flags": "-Wextra -Werror -Wall",
	"code": "<Some code>"
}

A servers outgoing response should look as follows:

{
	"result": "Request received!",
	"error": null
}

OR

{
	"result": null,
	"error": "This code is god awful!"
}