mod-dns-resolver: wire up test resolver setup

This commit is contained in:
Dirkjan Ochtman
2024-11-07 07:52:37 -07:00
committed by Wez Furlong
parent 55dcf3e6f9
commit fdcdad47d3
+14 -1
View File
@@ -1,7 +1,7 @@
use anyhow::Context;
use config::{any_err, get_or_create_sub_module, serialize_options};
use dns_resolver::{
get_resolver, resolve_a_or_aaaa, HickoryResolver, MailExchanger, UnboundResolver,
get_resolver, resolve_a_or_aaaa, HickoryResolver, MailExchanger, TestResolver, UnboundResolver,
};
use hickory_resolver::config::{NameServerConfig, Protocol, ResolverConfig, ResolverOpts};
use hickory_resolver::{Name, TokioAsyncResolver};
@@ -191,5 +191,18 @@ pub fn register(lua: &Lua) -> anyhow::Result<()> {
})?,
)?;
dns_mod.set(
"configure_test_resolver",
lua.create_function(move |lua, zones: mlua::Value| {
let mut resolver = TestResolver::default();
for zone in lua.from_value::<Vec<String>>(zones)? {
resolver = resolver.with_zone(&zone);
}
dns_resolver::reconfigure_resolver(resolver);
Ok(())
})?,
)?;
Ok(())
}