Skip to content
Snippets Groups Projects
submitter.py 761 B
Newer Older
Ruben Anthony Gonzalez's avatar
Ruben Anthony Gonzalez committed
import changeme
import logging as log


RES_FILE_PATH = changeme.res_file_path
RES_FILE = None


def submit_flag(team_id, flag):
    """
    Submit individual flag.
    """
    global RES_FILE
    if RES_FILE is None:
        RES_FILE = open(RES_FILE_PATH, "a")

    return_val = changeme.submission_logic(flag)

    RES_FILE.write("{} {} {}\n".format(return_val, team_id, flag))
    RES_FILE.flush()  # dirty but works for now

    return changeme.MESSAGES[return_val]


Ruben Anthony Gonzalez's avatar
Ruben Anthony Gonzalez committed
def do_submissions(flag_queue):
    while True:
        answer = flag_queue.get()
        flag = answer['flag']
        team_id = answer['team_id']
        result = submit_flag(team_id, flag)
Ruben Anthony Gonzalez's avatar
Ruben Anthony Gonzalez committed
        log.info("[SUBMITTER] Flag submission %s [team %d] returned %s", flag, team_id, result)