summaryrefslogtreecommitdiff
path: root/ext/fetch/lib.rs
diff options
context:
space:
mode:
authorMatt Mastracci <matthew@mastracci.com>2023-11-01 15:11:01 -0600
committerGitHub <noreply@github.com>2023-11-01 21:11:01 +0000
commit42c426e7695a0037032d1ac5237830800eeaaed4 (patch)
tree242f9aa30187464f1b6314387654a76d8dc76fc0 /ext/fetch/lib.rs
parent587f2e0800a55e58b2579758d4278a4129b609c0 (diff)
feat(ext/websocket): websockets over http2 (#21040)
Implements `WebSocket` over http/2. This requires a conformant http/2 server supporting the extended connect protocol. Passes approximately 100 new WPT tests (mostly `?wpt_flags=h2` versions of existing websockets APIs). This is implemented as a fallback when http/1.1 fails, so a server that supports both h1 and h2 WebSockets will still end up on the http/1.1 upgrade path. The patch also cleas up the websockets handshake to split it up into http, https+http1 and https+http2, making it a little less intertwined. This uncovered a likely bug in the WPT test server: https://github.com/web-platform-tests/wpt/issues/42896
Diffstat (limited to 'ext/fetch/lib.rs')
-rw-r--r--ext/fetch/lib.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/ext/fetch/lib.rs b/ext/fetch/lib.rs
index 797c5e2cd..7cde5584f 100644
--- a/ext/fetch/lib.rs
+++ b/ext/fetch/lib.rs
@@ -923,6 +923,7 @@ pub fn create_http_client(
options.ca_certs,
options.unsafely_ignore_certificate_errors,
options.client_cert_chain_and_key,
+ deno_tls::SocketUse::Http,
)?;
let mut alpn_protocols = vec![];