Challenging Thursdays Contest Judge
C Makefile
Latest commit c7701ec Oct 20, 2016 @aligrudi aligrudi test: limit allocated memory size
I prefer RLIMIT_AS.  Java however seems to allocate a large
memory region with mmap(), enlarging its virtual memory size
beyond MAXMEM when the VM starts.
Failed to load latest commit information.
README README: specifying verifier programs Oct 9, 2016
conn.c conn: handle half-duplex connections Sep 23, 2016
conn.h chth: the first version Sep 21, 2016
serv.c test: support java submissions Oct 20, 2016
test.c test: limit allocated memory size Oct 20, 2016


Challenging Thursdays

This is a small programming contest judge for "Challenging Thursdays".

After building, the server program can be started as follows, taking
the address of open contests as its arguments:

  $ serv cont1 cont2 ... contN

Each contest is specified as a directory containing several pairs of
files, each of which specify a test case: the file XY, in which X and
Y are both digits, is the input and XYo is the expected output (such
as 00 and 00o).  Alternatively, instead of the expected output file,
a verifier program (named XYv) can verify the output and print a
score for the test.  The verifier program can read test case input
from a file named .i and submitted program's output from a file
named .o.

The server listens on TCP port 40 for incoming connections.  Each
incoming connection can make one of the following requests:

report CONT
	Print submission statistics for contest CONT.
	Register a user with the given username and password.
	Submit a program for contest CONT in language LANG.  This
	command should be followed by the contents of the program,
	followed by a line containing nothing but EOF.  LANG can
	be c for C, c++ for C++, py for Python, and sh for Shell.

The following files are created by the server program.

* USERS: The list of users and their passwords.
* CONT.stat: Submission statistics for contest CONT.
* logs/: Submitted files are stored in this directory.