2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 22:15:20 +00:00

Avoid global namespace pollution

Add a main() function to all custom servers based on isctest.asyncserver
and move server startup code there.  This prevents redefining variables
from outer scope in custom server code as it evolves.

(cherry picked from commit 8cb51d4c2b)
This commit is contained in:
Michał Kępień
2025-04-11 09:14:57 -05:00
parent f919aa7cbb
commit cd640bd9f7
4 changed files with 20 additions and 4 deletions

View File

@@ -101,7 +101,7 @@ class StaleHandler(DomainHandler):
yield send_delegation(qctx, b_stale, "10.53.0.4")
if __name__ == "__main__":
def main() -> None:
server = AsyncDnsServer()
server.install_response_handler(QueryLogger())
server.install_response_handler(BadHandler())
@@ -109,3 +109,7 @@ if __name__ == "__main__":
server.install_response_handler(SlowHandler())
server.install_response_handler(StaleHandler())
server.run()
if __name__ == "__main__":
main()

View File

@@ -37,10 +37,14 @@ class ZoopBoingSlowHandler(DelayedResponseHandler):
delay = 0.4
if __name__ == "__main__":
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.run()
if __name__ == "__main__":
main()

View File

@@ -83,7 +83,7 @@ class IckyPtangZoopBoingSlowHandler(DelayedResponseHandler):
delay = 0.4
if __name__ == "__main__":
def main() -> None:
server = AsyncDnsServer()
server.install_response_handler(QueryLogger())
server.install_response_handler(StaleHandler())
@@ -91,3 +91,7 @@ if __name__ == "__main__":
server.install_response_handler(IckyPtangZoopBoingUglyHandler())
server.install_response_handler(IckyPtangZoopBoingSlowHandler())
server.run()
if __name__ == "__main__":
main()

View File

@@ -14,7 +14,11 @@ information regarding copyright ownership.
from isctest.asyncserver import AsyncDnsServer, IgnoreAllQueries
if __name__ == "__main__":
def main() -> None:
server = AsyncDnsServer()
server.install_response_handler(IgnoreAllQueries())
server.run()
if __name__ == "__main__":
main()