summaryrefslogtreecommitdiff
path: root/extensions/net/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/net/lib.rs')
-rw-r--r--extensions/net/lib.rs13
1 files changed, 12 insertions, 1 deletions
diff --git a/extensions/net/lib.rs b/extensions/net/lib.rs
index f3281a2fb..11d0b4493 100644
--- a/extensions/net/lib.rs
+++ b/extensions/net/lib.rs
@@ -88,12 +88,22 @@ pub fn get_unstable_declaration() -> PathBuf {
PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("lib.deno_net.unstable.d.ts")
}
-pub fn init<P: NetPermissions + 'static>(unstable: bool) -> Extension {
+#[derive(Clone)]
+pub struct DefaultTlsOptions {
+ pub ca_data: Option<Vec<u8>>,
+}
+
+pub fn init<P: NetPermissions + 'static>(
+ ca_data: Option<Vec<u8>>,
+ unstable: bool,
+) -> Extension {
let mut ops_to_register = vec![];
ops_to_register.extend(io::init());
ops_to_register.extend(ops::init::<P>());
ops_to_register.extend(ops_tls::init::<P>());
+ let default_tls_options = DefaultTlsOptions { ca_data };
+
Extension::builder()
.js(include_js_files!(
prefix "deno:extensions/net",
@@ -103,6 +113,7 @@ pub fn init<P: NetPermissions + 'static>(unstable: bool) -> Extension {
))
.ops(ops_to_register)
.state(move |state| {
+ state.put(default_tls_options.clone());
state.put(UnstableChecker { unstable });
Ok(())
})