diff --git a/daemon/worker.c b/daemon/worker.c index a146bd025..fc9407bac 100644 --- a/daemon/worker.c +++ b/daemon/worker.c @@ -262,6 +262,11 @@ worker_check_request(ldns_buffer* pkt, struct worker* worker) verbose(VERB_DETAIL, "request has QR bit on, discarded"); return -1; } + if(LDNS_TC_WIRE(ldns_buffer_begin(pkt))) { + LDNS_TC_CLR(ldns_buffer_begin(pkt)); + verbose(VERB_DETAIL, "request bad, has TC bit on"); + return LDNS_RCODE_FORMERR; + } if(LDNS_OPCODE_WIRE(ldns_buffer_begin(pkt)) != LDNS_PACKET_QUERY) { verbose(VERB_DETAIL, "request unknown opcode %d", LDNS_OPCODE_WIRE(ldns_buffer_begin(pkt))); diff --git a/doc/Changelog b/doc/Changelog index e014db2f6..fbcf5941b 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,3 +1,6 @@ +16 January 2008: Wouter + - incoming queries to the server with TC bit on are replied FORMERR. + 15 January 2008: Wouter - interface-automatic feature. experimental. Nice for anycast. - tpkg test for ip6 ancillary data.