<aside> A technical deep-dive into implementing native TCP sockets with demonstrations and results
</aside>
As part of my assignments repository, I needed to implement a native socket server, aesdsocket, that adhered to strict requirements. The server had to bind to port 9000, accept client connections, log connection details, receive data, store it in a file, and return the file contents upon receiving complete packets. Additionally, it had to handle signals gracefully, support daemon mode, and pass validation using an automated test script (full-test.sh). Ensuring robustness, proper error handling, and compliance with these specifications was a significant challenge.
syslog for logging connection and error messages.netcat for manual testing of the socket server.sockettest.sh, ensuring correct data storage and retrieval.full-test.sh to verify compliance with specifications.Terminating aesdsocket process

aesdsocket after integration into QEMU

Document the insights gained from this project: