I suggest to move a few function declarations from the source file "tftpserver.cpp" to the header. Do all data structures in the source file "tftpserver.h" belong to the public application programming interface of your server?