summaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorSahand Akbarzadeh <sahandevs@gmail.com>2024-11-15 14:14:11 +0330
committerGitHub <noreply@github.com>2024-11-15 11:44:11 +0100
commit032ae7fb19bd01c1de28515facd5c3b2ce821924 (patch)
tree36a95c499cbc8cbb516716d52729d96e5b781a13 /runtime
parentc9baf3849fdbe161a9251a712a71e2b91eeabf3e (diff)
feat(ext/fetch): allow embedders to use `hickory_dns_resolver` instead of default `GaiResolver` (#26740)
Allows embedders to use `hickory-dns-resolver` instead of threaded "getaddrinfo" resolver in the `fetch()` implementation.
Diffstat (limited to 'runtime')
-rw-r--r--runtime/examples/extension/main.rs1
-rw-r--r--runtime/worker.rs2
2 files changed, 3 insertions, 0 deletions
diff --git a/runtime/examples/extension/main.rs b/runtime/examples/extension/main.rs
index 9889b28dc..1ff16ec83 100644
--- a/runtime/examples/extension/main.rs
+++ b/runtime/examples/extension/main.rs
@@ -50,6 +50,7 @@ async fn main() -> Result<(), AnyError> {
node_services: Default::default(),
npm_process_state_provider: Default::default(),
root_cert_store_provider: Default::default(),
+ fetch_dns_resolver: Default::default(),
shared_array_buffer_store: Default::default(),
compiled_wasm_module_store: Default::default(),
v8_code_cache: Default::default(),
diff --git a/runtime/worker.rs b/runtime/worker.rs
index c7bfb1c5f..99123463c 100644
--- a/runtime/worker.rs
+++ b/runtime/worker.rs
@@ -143,6 +143,7 @@ pub struct WorkerServiceOptions {
pub npm_process_state_provider: Option<NpmProcessStateProviderRc>,
pub permissions: PermissionsContainer,
pub root_cert_store_provider: Option<Arc<dyn RootCertStoreProvider>>,
+ pub fetch_dns_resolver: deno_fetch::dns::Resolver,
/// The store to use for transferring SharedArrayBuffers between isolates.
/// If multiple isolates should have the possibility of sharing
@@ -363,6 +364,7 @@ impl MainWorker {
.unsafely_ignore_certificate_errors
.clone(),
file_fetch_handler: Rc::new(deno_fetch::FsFetchHandler),
+ resolver: services.fetch_dns_resolver,
..Default::default()
},
),