Tests todo: A - SERVFAIL - should return empty response, ra 0 A - NXDOMAIN - should return SOA A - NOERROR - should return A record - or delegated NS record Record delegated to self should return SOA record rather than NS delegation Casing should match on question section, always. Casing should match on other sections if a direct match? (not required, but efficient for compression pointers) - www.EXample.COm + example.com = EXample.COm - EXample.COm + www.example.com = www.EXample.COm - (this should be taken care of by compression pointer logic, once implemented) Send malformed packets (both as queries and as answers): - bad question count, answer count, etc - bad rdata (too long, too short) - proper packets, truncated - randomly twiddled bits - forward compression pointers - compression pointers to wrong bits (throw error on non-ascii / unsafe chars)