summaryrefslogtreecommitdiff
path: root/extensions/fetch/lib.rs
diff options
context:
space:
mode:
authorTheAifam5 <theaifam5@gmail.com>2021-08-09 16:53:21 +0200
committerGitHub <noreply@github.com>2021-08-09 16:53:21 +0200
commit353a4a1af3165b2c59319865350d70a99105269c (patch)
tree32eb71ccef95552bd4ec4af176b7ddcfe51d172c /extensions/fetch/lib.rs
parent3ab50b355141f744a0acec1a5cc3b3b95247d4b1 (diff)
feat: Add --unsafely-treat-insecure-origin-as-secure flag to disable SSL verification (#11324)
This commit adds "--unsafely-treat-insecure-origin-as-secure" flag that allows to disable SSL verification for all domains, or specific domains if they were passed as an argument to the flag. Co-authored-by: Bartek IwaƄczuk <biwanczuk@gmail.com>
Diffstat (limited to 'extensions/fetch/lib.rs')
-rw-r--r--extensions/fetch/lib.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/extensions/fetch/lib.rs b/extensions/fetch/lib.rs
index 0ac853cbc..cc5954b74 100644
--- a/extensions/fetch/lib.rs
+++ b/extensions/fetch/lib.rs
@@ -60,6 +60,7 @@ pub fn init<P: FetchPermissions + 'static>(
root_cert_store: Option<RootCertStore>,
proxy: Option<Proxy>,
request_builder_hook: Option<fn(RequestBuilder) -> RequestBuilder>,
+ unsafely_treat_insecure_origin_as_secure: Option<Vec<String>>,
) -> Extension {
Extension::builder()
.js(include_js_files!(
@@ -87,6 +88,7 @@ pub fn init<P: FetchPermissions + 'static>(
root_cert_store.clone(),
None,
proxy.clone(),
+ unsafely_treat_insecure_origin_as_secure.clone(),
)
.unwrap()
});
@@ -95,6 +97,8 @@ pub fn init<P: FetchPermissions + 'static>(
root_cert_store: root_cert_store.clone(),
proxy: proxy.clone(),
request_builder_hook,
+ unsafely_treat_insecure_origin_as_secure:
+ unsafely_treat_insecure_origin_as_secure.clone(),
});
Ok(())
})
@@ -106,6 +110,7 @@ pub struct HttpClientDefaults {
pub root_cert_store: Option<RootCertStore>,
pub proxy: Option<Proxy>,
pub request_builder_hook: Option<fn(RequestBuilder) -> RequestBuilder>,
+ pub unsafely_treat_insecure_origin_as_secure: Option<Vec<String>>,
}
pub trait FetchPermissions {
@@ -532,11 +537,13 @@ where
let defaults = state.borrow::<HttpClientDefaults>();
let cert_data =
get_cert_data(args.ca_file.as_deref(), args.ca_data.as_deref())?;
+
let client = create_http_client(
defaults.user_agent.clone(),
defaults.root_cert_store.clone(),
cert_data,
args.proxy,
+ defaults.unsafely_treat_insecure_origin_as_secure.clone(),
)
.unwrap();