// the find
WSKazuki/helpdesk-ticketing-c
C socket-based helpdesk ticketing system with roles (client/agent/admin), file storage, and registration
A university project implementing a TCP socket helpdesk system in C with three roles (client, agent, admin) and flat-file persistence. Credentials and tickets live in plain .txt files. This is a learning exercise, not something you'd deploy.
Raw POSIX socket code is a reasonable way to learn network programming fundamentals in C. Role separation across three binaries (client, agent_client, server) keeps the build simple. The auth module is at least factored out into auth.c/auth.h rather than inlined everywhere. The README is honest about plaintext passwords.
Flat-file storage with no locking means concurrent connections will corrupt tickets.txt or users.txt immediately — there's no mutex or file lock anywhere obvious. Passwords are plaintext by design, acknowledged but unaddressed. The registration feature ships as copy-paste snippets in .txt files rather than integrated code, which means the repo as-checked-in likely doesn't compile into a working whole. Zero stars, zero forks, and the README instructs you on what to name the repo — this was submitted as coursework and pushed to GitHub the same day.