Now that I have full DNS-over-TCP support in Deadwood (we can return a DNS packet from the cache for DNS-over-TCP queries; we only send TCP packets upstream if we get a truncated packet; we send TCP packets from upstream to the downstream DNS client), I want to fully test this code. I want to make sure that the buffering code I have in place works.
The problem with my current testing setup is that sending all packets over localhost doesn't need buffering, so the buffering isn't properly tested.
Since it's difficult to find DNS packets in the real internet large enough to require DNS-over-TCP, the way I am testing things is by writing a series of tools that will (hopefully) simulate DNS servers on the internet well enough to find and fix any problems with DNS-over-TCP buffering code. This code is currently incomplete.
Note that I have a number of personal commitments this weekend and may not be able to make another Deadwood snapshot update until late Tuesday; we'll see how things go.