def submitSpecial(self: RequestHandler, args: dict): try: questionsSQLMethod.questions.addUnapproved(self.current_user.id, args["question"], args["answer"]) SSE_messages.addMessage(self.current_user.username + " made a submission!") except IntegrityError: pass return self.finish(JSON.YES())
def questionsSpecialUnapprove(self: RequestHandler, args: dict): if not self.current_user.isAdmin: return self.finish(JSON.error("access denied")) result = questionsSQLMethod.questions.unapproveSolve(args["solve"]) if result: SSE_messages.addMessage(args["username"] + " had a submission unapproved :(") return self.finish(JSON.OK()) return self.finish(JSON.FALSE())
def run(file: str = None, **kwargs): print("----------------------------------------") print("Server version:", __VERSION) if file: print("Loading config file:", file) import lib from lib.config import readConfig lib.config = config = readConfig(file) else: from lib.config import config if kwargs: print("Applying config overrides") config.update(kwargs) print("----------------------------------------") try: settings = dict( ssl_options={ "certfile": os.path.join( "/etc/letsencrypt/live/scavhunt.tech/fullchain.pem"), "keyfile": os.path.join( "/etc/letsencrypt/live/scavhunt.tech/privkey.pem"), }) server = tornado.httpserver.HTTPServer(app, **settings) port = config["SERVER"].get("port", 443) except: # Unable to run on HTTPS server = tornado.httpserver.HTTPServer(app) port = config["SERVER"].get("port", 80) try: server.bind(port) except OSError: print("Port", port, "is in use!\nAborting...") return try: from os import fork server.start(0) except: print( ":: os.fork not present on system (Windows) - Defaulting to single process" ) server.start(1) print("Server running on port %s\n" % port) SSE_messages.addMessage("The game server is online!") SSE_messages.do.reloadSite() tornado.ioloop.IOLoop.current().start()
def trySolve(self: RequestHandler, args: dict): if args["answer"].lower() == questionsSQLMethod.questions.getAnswer( args["question"]): try: questionsSQLMethod.questions.solveQuestion(self.current_user.id, args["question"]) SSE_messages.addMessage(self.current_user.username + " has found an answer!") except IntegrityError: pass return self.finish(JSON.YES()) return self.finish(JSON.NO())
def run(file: str = None, **kwargs): print("UNSW CSE CompClub 2019 Summer CTF Server") print(" [ by Andrew Wong ]") print("----------------------------------------") print("Server version:", __VERSION) if file: print("Loading config file:", file) import lib from lib.config import readConfig # Must be getting the CONFIGURAITON OF THE FILE lib.config = config = readConfig(file) else: from lib.config import config if kwargs: print("Applying config overrides") config.update(kwargs) print("----------------------------------------") server = tornado.httpserver.HTTPServer(app) port = config["SERVER"].get("port", 8000) try: server.bind(port) except OSError: print("Port", port, "is in use!\nAborting...") return try: from os import fork server.start(0) except: print( ":: os.fork not present on system (Windows) - Defaulting to single process" ) server.start(1) print("Server running on port %s\n" % port) SSE_messages.addMessage("The game server is online!") SSE_messages.do.reloadSite() # DO tornado.ioloop.IOLoop.current().start()