summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/_tls_wrap.ts
diff options
context:
space:
mode:
authorMatt Mastracci <matthew@mastracci.com>2024-04-18 09:37:47 -0600
committerGitHub <noreply@github.com>2024-04-18 09:37:47 -0600
commit5e2a747685490b31efa778241fccf938bd33722d (patch)
tree6ede300e32bf57942ba0bf4ddae8d4eb02026e5a /ext/node/polyfills/_tls_wrap.ts
parent25a80bc523bf47d5eba8d578b9ffeba26a8d0341 (diff)
fix(ext/node): Correctly send ALPN on node TLS connections (#23434)
Landing work from #21903, plus fixing a node compat bug. We were always sending the HTTP/2 ALPN on TLS connections which might confuse upstream servers. Changes: - Configure HTTP/2 ALPN when making the TLS connection from the HTTP/2 code - Read the `ALPNProtocols` property from the TLS connection options rather than the deno `alpnProtocols` field - Add tests Prereq for landing Deno.serveHttp on Deno.serve: removing older HTTP servers from the codebase.
Diffstat (limited to 'ext/node/polyfills/_tls_wrap.ts')
-rw-r--r--ext/node/polyfills/_tls_wrap.ts4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/node/polyfills/_tls_wrap.ts b/ext/node/polyfills/_tls_wrap.ts
index a70dd29f1..ed2bdd0a3 100644
--- a/ext/node/polyfills/_tls_wrap.ts
+++ b/ext/node/polyfills/_tls_wrap.ts
@@ -96,7 +96,7 @@ export class TLSSocket extends net.Socket {
caCerts = [new TextDecoder().decode(caCerts)];
}
tlsOptions.caCerts = caCerts;
- tlsOptions.alpnProtocols = ["h2", "http/1.1"];
+ tlsOptions.alpnProtocols = opts.ALPNProtocols;
super({
handle: _wrapHandle(tlsOptions, socket),
@@ -114,7 +114,7 @@ export class TLSSocket extends net.Socket {
this.secureConnecting = true;
this._SNICallback = null;
this.servername = null;
- this.alpnProtocols = tlsOptions.alpnProtocols;
+ this.alpnProtocols = tlsOptions.ALPNProtocols;
this.authorized = false;
this.authorizationError = null;
this[kRes] = null;