Please find attached a rebased and lightly reworked version of this patch. The most significant change is the test file now uses IO::Socket::INET via $node->raw_connect. Also changed to allow case-insensitive calls, moved to a better docs group, moved the defines and typedefs up, and changed the exit to just a simple _exit()