The only change I would make would be to add a comment at the end of #define FQDN_LEN 253 to have it read #define FQDN_LEN 253 // FullyQualifiedDomainName or put it in the comment. I had to think for a few seconds before I worked out what FQDN stood for. Take away that pain :-)