Before I implement proper handling of truncated packets from upstream, I have cleaned up the testing for the new combined UDP-and-TCP DNS client code. I have fixed the "maxprocs" test so it doesn't fail at random the way it used to, and added a new test to test handle_noreply for DNS-over-TCP connections.
Next: Correctly handle truncated DNS packets.
It can be downloaded here