The tasks in the memory-security subchapter [1] require students to make small changes and notice various behaviours. These can be verified via scripts for each individual task.
Each task (except for exec-shellcode [2]) requires the following changes:
Add solution.
Remove the support/ folder and add the generate_skels.py infrastructure to generate the skeletons from the solutions.
Add checker scripts similar to exec-shellcode [3] to each task. Make sure to only place these checkers in the solution/ folder and have them copied to support/ when running make skels.
Also, add instructions about running objdump specifically about using the -M intel arguments to display the Assembly code in the Intel syntax as opposed to the default AT&T.
The tasks in the
memory-security
subchapter [1] require students to make small changes and notice various behaviours. These can be verified via scripts for each individual task.Each task (except for
exec-shellcode
[2]) requires the following changes:support/
folder and add thegenerate_skels.py
infrastructure to generate the skeletons from the solutions.exec-shellcode
[3] to each task. Make sure to only place these checkers in thesolution/
folder and have them copied tosupport/
when runningmake skels
.[1] https://github.com/cs-pub-ro/operating-systems/tree/main/chapters/data/memory-security/drills/tasks [2] https://github.com/cs-pub-ro/operating-systems/tree/main/chapters/data/memory-security/drills/tasks/exec-shellcode [3] https://github.com/cs-pub-ro/operating-systems/tree/main/chapters/data/memory-security/drills/tasks/exec-shellcode/support/tests