Various EDNS middleware fixes and improved Stelline test:
Reply with FORMERR if an OPT RR cannot be parsed.
Don't reply with FORMERR if an edns-tcp-keepalive option is received via UDP, instead ignore it per RFC 7828 3.2.1.
Only reserve space for an edns-tcp-keepalive option for TCP requests, not UDP requests.
Always reserve space for an OPT RR in the response for any request that has an OPT RR, not just TCP requests.
Add Stelline support for detecting a closed TCP connection (as happens on idle timeout) and extend the edns_keepalive.rpl test to test this.
Disable TCP client retries in Stelline server tests otherwise a connection abort causes a retry which violates the test expectation.
This branch merges into the stelline-server-testing-changes PR branch because it builds on the work in that branch to support reserving space in the response message (e.g. for an OPT RR).
Various EDNS middleware fixes and improved Stelline test:
This branch merges into the
stelline-server-testing-changes
PR branch because it builds on the work in that branch to support reserving space in the response message (e.g. for an OPT RR).