for rrset in self._additional_rrsets:
qctx.response.additional.append(rrset)
- qctx.response.set_rcode(dns.rcode.NOERROR)
qctx.response.use_edns()
yield DnsResponseSend(qctx.response)
def main() -> None:
- server = ControllableAsyncDnsServer(default_aa=True)
+ server = ControllableAsyncDnsServer(
+ default_aa=True, default_rcode=dns.rcode.NOERROR
+ )
server.install_control_command(ChainSetupCommand())
server.run()
self, qctx: QueryContext
) -> AsyncGenerator[ResponseAction, None]:
assert qctx.protocol == DnsProtocol.UDP, "This server only supports UDP"
- qctx.response.set_rcode(dns.rcode.NOERROR)
qctx.response.flags |= dns.flags.TC
yield DnsResponseSend(qctx.response)
def main() -> None:
- server = AsyncDnsServer()
+ server = AsyncDnsServer(default_rcode=dns.rcode.NOERROR)
server.install_connection_handler(ConnectionReset(delay=1.0))
server.install_response_handler(TruncateOnUdpHandler())
server.run()
rrset = dns.rrset.from_text(qctx.qname, 300, qctx.qclass, qctx.qtype, addr)
qctx.response.answer.append(rrset)
- qctx.response.set_rcode(dns.rcode.NOERROR)
delay = 0.05 if qctx.qname.labels[0].startswith(b"latency") else 0.00
yield DnsResponseSend(qctx.response, delay=delay)
def main() -> None:
- server = ControllableAsyncDnsServer(default_aa=True)
+ server = ControllableAsyncDnsServer(
+ default_aa=True, default_rcode=dns.rcode.NOERROR
+ )
server.install_control_command(ToggleResponsesCommand())
server.install_response_handler(MaybeDelayedAddressAnswerHandler())
server.run()
response_rdata = ". . 0 0 0 0 0"
response_section = qctx.response.authority
- qctx.response.set_rcode(dns.rcode.NOERROR)
qctx.response.use_edns(None)
response_rrset = dns.rrset.from_text(
def main() -> None:
- server = ControllableAsyncDnsServer(default_aa=True)
+ server = ControllableAsyncDnsServer(
+ default_rcode=dns.rcode.NOERROR, default_aa=True
+ )
server.install_control_command(ToggleResponsesCommand())
server.install_response_handler(ChaseDsHandler())
server.run()
qctx.qname, 300, dns.rdataclass.IN, dns.rdatatype.A, "10.53.0.5"
)
qctx.response.answer.append(a_rrset)
- qctx.response.set_rcode(dns.rcode.NOERROR)
yield DnsResponseSend(qctx.response)
yield ResponseDrop()
-class FallbackHandler(ResponseHandler):
- async def get_responses(
- self, qctx: QueryContext
- ) -> AsyncGenerator[DnsResponseSend, None]:
- qctx.response.set_rcode(dns.rcode.NOERROR)
- yield DnsResponseSend(qctx.response)
-
-
def main() -> None:
- server = AsyncDnsServer(default_aa=True)
+ server = AsyncDnsServer(default_aa=True, default_rcode=dns.rcode.NOERROR)
server.install_response_handler(ReplyA())
server.install_response_handler(IgnoreNs())
- server.install_response_handler(FallbackHandler())
server.run()
qctx.response.answer.append(rrset)
self._ip_address += 1
- qctx.response.set_rcode(dns.rcode.NOERROR)
yield DnsResponseSend(qctx.response)
def main() -> None:
- server = AsyncDnsServer(default_aa=True)
+ server = AsyncDnsServer(default_aa=True, default_rcode=dns.rcode.NOERROR)
server.install_response_handler(IncrementARecordHandler())
server.run()