Windows! This uses windows syscalls and win64 calling convention
nasm - Our assembler to turn *.asm files into binary
Windows SDK - We use windows api system calls so we need to link with the *.Lib files these function are found in
link - The windows link.exe application which will turn our binary into a valid Portable Executable (PE) file
The make.ps1 builds and runs the echo server
-
Find the below in in the
make.ps1file and update to your windows SDK path$WIN_LIB_PATH = "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0"
-
Run the below in a powershell window
.\make.ps1
-
Thats it!
You should see the terminal hang if it is running. It is now listening on all IPv4 interfaces on port 6969 Can test with your favourite TCP client. Example using netcat
echo "Testing my echo server" | nc -v 127.0.0.1 6969