Documentation
¶
Index ¶
- Variables
- func ConnectDB()
- func DeleteFile(fileid string)
- func GetConn() *gorm.DB
- func GetFile(fileid string) string
- func HandleNoMethod(c *gin.Context)
- func HandleNoRoute(c *gin.Context)
- func NewCaptcha(c *gin.Context)
- func PathExists(path string) (bool, error)
- func SendRunReqWithFileid(fileId string, lanType string) (string, error)
- func SendStorageReq(filePath string) (string, error)
- func VerifyCaptcha(captchaID string, captchaAns string) bool
- type Cmd
- type CmdFile
- type WholeFile
Constants ¶
This section is empty.
Variables ¶
View Source
var ( Address = "http://" + config.GetEnvSettings().EnvironmentSettings.Sandbox.Address + ":" + strconv.Itoa(config.GetEnvSettings().EnvironmentSettings.Sandbox.Port) TimeLimit = config.GetEnvSettings().EnvironmentSettings.Sandbox.TimeLimit * 1000 * 1000 MemoryLimit = config.GetEnvSettings().EnvironmentSettings.Sandbox.MemoryLimit * 1024 * 1024 StackLimit = config.GetEnvSettings().EnvironmentSettings.Sandbox.StackLimit * 1024 * 1024 ProcLimit = config.GetEnvSettings().EnvironmentSettings.Sandbox.ProcLimit CpuRateLimit = config.GetEnvSettings().EnvironmentSettings.Sandbox.CpuRateLimit )
Functions ¶
func DeleteFile ¶
func DeleteFile(fileid string)
func HandleNoMethod ¶
func HandleNoRoute ¶
func PathExists ¶
func SendRunReqWithFileid ¶
{ "cmd": [{ "args": ["/usr/bin/g++", "a.cc", "-o", "a"], "env": ["PATH=/usr/bin:/bin"], "files": [{ "content": "" }, { "name": "stdout", "max": 10240 }, { "name": "stderr", "max": 10240 }], "cpuLimit": 10000000000, "memoryLimit": 104857600, "procLimit": 50, "copyIn": { "a.cc": { "content": "#include <iostream>\nusing namespace std;\nint main() {\nint a, b;\ncin >> a >> b;\ncout << a + b << endl;\n}" } }, "copyOut": ["stdout", "stderr"], "copyOutCached": ["a.cc", "a"], "copyOutDir": "1" }] }
func SendStorageReq ¶
func VerifyCaptcha ¶
Types ¶
type Cmd ¶
type Cmd struct { Args []string `json:"args"` Env []string `json:"env,omitempty"` Files []CmdFile `json:"files,omitempty"` CPULimit uint64 `json:"cpuLimit"` // RealCPULimit uint64 `json:"realCpuLimit"` // ClockLimit uint64 `json:"clockLimit"` MemoryLimit uint64 `json:"memoryLimit"` StackLimit uint64 `json:"stackLimit"` ProcLimit uint64 `json:"procLimit"` CPURateLimit uint64 `json:"cpuRateLimit"` // CPUSetLimit string `json:"cpuSetLimit"` // StrictMemoryLimit bool `json:"strictMemoryLimit"` CopyIn map[string]CmdFile `json:"copyIn"` CopyOut []string `json:"copyOut"` }
Click to show internal directories.
Click to hide internal directories.