/* This object controls everything */ object connect() { return new("/connection"); } string process_request(string uri) { sscanf(uri, "%s.html", uri); sscanf(uri, "/%s", uri); if (uri == "") uri = "index"; if (file_size("/data/" + uri) == -2) { if (uri[<1] == '/') uri += "index"; else uri += "/index"; } if (strsrch(uri, "..") != -1) return 0; if (file_size("/data/" + uri + ".html") >= 0) return read_file("/data/" + uri + ".html"); if (file_size("/data/" + uri + ".c") >= 0) return ("/data/" + uri)->request(); return 0; } void log_error(string file, string msg) { write_file("/log/compile", file + ":" + msg + "\n"); }