Submission ========== .. attention:: The project is due on **Tuesday, 8th April 2025, 11:59 PM**. Projects must be submitted before the deadline. After this time, a penalty will be applied to late submissions. This penalty is calculated as a deduction of :math:`2^N − 1` marks, where N is the number of started days after the deadline (total is on 20). **Be careful however that even if you use the late submission, the MCQ on the project still needs to be taken the day after the deadline (Wednesday, 9th April 2025).** Your submission will be a tarball archive named ``group_{your_group_ID}.tar.gz``. At the root of your archive will be a directory named ``group_{your_group_ID}``. Inside this directory, you will have one directory per challenge, each named with the challenge's name (as in the templates downloaded from the website). However, you will only include your source files at the root of those directories (not in ``src/``). You can also include a ``README.md`` file at the root of your archive if you want to provide additional information about your submission. You can also include a ``feedback.txt`` file at the root of your archive if you want to provide feedback about the project (e.g., what you liked/disliked, what was easy/hard, points of improvement, etc.). .. important:: Your code is going to be tested on the same VM as the one you used for the project, with all the tools mentionned in tutorial 3 and 4 installed. LSM will also be enabled for challenge 2. If you made any other modifications to the VM for your code to work, please mention it in the README.md file. This means that running the following command: .. code-block:: bash tar -xzvf group_{your_group_ID}.tar.gz should output something like:: group_{your_group_ID}/ group_{your_group_ID}/README.md # README.md is optional group_{your_group_ID}/feedback.txt # feedback.txt is optional group_{your_group_ID}/keylogger/ group_{your_group_ID}/keylogger/keylogger.h group_{your_group_ID}/keylogger/keylogger.bpf.c group_{your_group_ID}/page_faults/ group_{your_group_ID}/page_faults/page_fault.h group_{your_group_ID}/page_faults/page_fault.bpf.c group_{your_group_ID}/forkbomb/ group_{your_group_ID}/forkbomb/forkbomb.bpf.c group_{your_group_ID}/seccomp/ group_{your_group_ID}/seccomp/seccomp.bpf.c group_{your_group_ID}/anticheat/ group_{your_group_ID}/anticheat/anticheat.bpf.c Submissions will be made as a ``group_{your_group_ID}.tar.gz`` archive (for example ``group_3.tar.gz``), on the `submission system `_. Failure to compile a challenge will result in an awarded mark of 0 for this challenge. Different challenges can have different weights, depending on their difficulty. Bon travail... .. note:: You do not have to worry about race conditions for this project.