Change this at call sites as well.
def main() -> None:
server = AsyncDnsServer(acknowledge_manual_dname_handling=True, default_aa=True)
- server.install_response_handler(CnameThenDnameHandler())
- server.install_response_handler(Cve202125215())
+ server.install_response_handlers([CnameThenDnameHandler(), Cve202125215()])
server.run()
def cookie_server(evil: bool) -> AsyncDnsServer:
server = AsyncDnsServer(acknowledge_tsig_dnspython_hacks=True)
- server.install_response_handler(NsHandler(evil))
- server.install_response_handler(GlueHandler(evil))
- server.install_response_handler(TcpAHandler())
- server.install_response_handler(WithtsigUdpAHandler())
- server.install_response_handler(UdpAHandler())
- server.install_response_handler(FallbackHandler())
+ server.install_response_handlers(
+ [
+ NsHandler(evil),
+ GlueHandler(evil),
+ TcpAHandler(),
+ WithtsigUdpAHandler(),
+ UdpAHandler(),
+ FallbackHandler(),
+ ]
+ )
return server
def main() -> None:
server = AsyncDnsServer()
- server.install_response_handler(AddRrsigToAHandler())
- server.install_response_handler(AddNsecToTxtHandler())
+ server.install_response_handlers([AddRrsigToAHandler(), AddNsecToTxtHandler()])
server.run()
else:
self._response_handlers.append(handler)
+ def install_response_handlers(self, handlers: List[ResponseHandler]) -> None:
+ for handler in handlers:
+ self.install_response_handler(handler)
+
def uninstall_response_handler(self, handler: ResponseHandler) -> None:
"""
Remove the specified handler from the list of response handlers.
def main() -> None:
server = AsyncDnsServer()
- server.install_response_handler(QueryLogger())
- server.install_response_handler(BadHandler())
- server.install_response_handler(UglyHandler())
- server.install_response_handler(SlowHandler())
- server.install_response_handler(StaleHandler())
+ server.install_response_handlers(
+ [
+ QueryLogger(),
+ BadHandler(),
+ UglyHandler(),
+ SlowHandler(),
+ StaleHandler(),
+ ]
+ )
server.run()
def main() -> None:
server = AsyncDnsServer()
- server.install_response_handler(QueryLogger())
- server.install_response_handler(ZoopBoingBadHandler())
- server.install_response_handler(ZoopBoingUglyHandler())
- server.install_response_handler(ZoopBoingSlowHandler())
+ server.install_response_handlers(
+ [
+ QueryLogger(),
+ ZoopBoingBadHandler(),
+ ZoopBoingUglyHandler(),
+ ZoopBoingSlowHandler(),
+ ]
+ )
server.run()
def main() -> None:
server = AsyncDnsServer()
- server.install_response_handler(QueryLogger())
- server.install_response_handler(StaleHandler())
- server.install_response_handler(IckyPtangZoopBoingBadHandler())
- server.install_response_handler(IckyPtangZoopBoingUglyHandler())
- server.install_response_handler(IckyPtangZoopBoingSlowHandler())
+ server.install_response_handlers(
+ [
+ QueryLogger(),
+ StaleHandler(),
+ IckyPtangZoopBoingBadHandler(),
+ IckyPtangZoopBoingUglyHandler(),
+ IckyPtangZoopBoingSlowHandler(),
+ ]
+ )
server.run()
def main() -> None:
server = AsyncDnsServer(default_aa=True, default_rcode=dns.rcode.NOERROR)
- server.install_response_handler(ReplyA())
- server.install_response_handler(IgnoreNs())
+ server.install_response_handlers([ReplyA(), IgnoreNs()])
server.run()
def main() -> None:
server = AsyncDnsServer(default_rcode=dns.rcode.NOERROR)
- for handler in (
- BadGoodCnameHandler,
- Cname1Handler,
- Cname2Handler,
- ExampleHandler,
- FooInfoHandler,
- NoDataHandler,
- NxdomainHandler,
- SubHandler,
- FallbackHandler,
- ):
- server.install_response_handler(handler())
+ server.install_response_handlers(
+ [
+ BadGoodCnameHandler(),
+ Cname1Handler(),
+ Cname2Handler(),
+ ExampleHandler(),
+ FooInfoHandler(),
+ NoDataHandler(),
+ NxdomainHandler(),
+ SubHandler(),
+ FallbackHandler(),
+ ]
+ )
server.run()