💾 Archived View for gemlog.blue › users › ttocsneb › 1612760873.gmi captured on 2024-03-21 at 18:53:49. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-12-04)
-=-=-=-=-=-=-
I have never been so happy to see an error page! Yesterday I have been struggling to compile my gemini server which for now, I have been calling gemcaps. Everything would compile just fine, but the linking wouldn't work. It was late and I was exhausted and sick of the project. For some reason, the tests would compile and run just fine, but the main program I just couldn't get to work.
After a long rest I decided I would try to tackle the issue that is my broken code. Because I am was longer tired and irritated, the problem was solved within 10 minutes. The issue was as you might expect: forgetting to link the necessary libraries. In my defense I thought that the crypto library was already included by my tcp library.
After the program compiled I was able to test if the protocol even connected. And to my surprise, it didn't work exactly how I was expecting it not to work! I got an error 41 Server Unavailable. While this sounds bad, it isn't. My server just couldn't find a virtual host to accept my request.
For the rest of the day I have been working on getting the server to read files from disk in a safe manner. I think it works, but there are definitely more bugs to work out. I should also check my work and do some more research on how to properly handle virtual hosts and proxies to allow for subdomains and protect the data that is sent from the client.
Once I feel happy with my server I plan to upload it to my github, and start work on a wsgi style handler for the server.