]> Cypherpunks repositories - gostls13.git/commit
net/http: add support for unencrypted HTTP/2
authorDamien Neil <dneil@google.com>
Mon, 4 Nov 2024 19:21:04 +0000 (11:21 -0800)
committerDamien Neil <dneil@google.com>
Thu, 21 Nov 2024 23:48:38 +0000 (23:48 +0000)
commit66abc557077c026cf21b228fe0f53afe652a4d1c
tree6030d19f58708a69c485faf3d80f738fe6494023
parentc0bccdd2fd2a26c34b30ec93e64fa1ebe704dc10
net/http: add support for unencrypted HTTP/2

Add an UnencryptedHTTP2 protocol value.

Both Server and Transport implement "HTTP/2 with prior knowledge"
as described in RFC 9113, section 3.3. Neither supports the
deprecated HTTP/2 upgrade mechanism (RFC 7540, section 3.2 "h2c").

For Server, UnencryptedHTTP2 controls whether the server
will accept HTTP/2 connections on unencrypted ports.
When enabled, the server checks new connections for
the HTTP/2 preface and routes them appropriately.

For Transport, enabling UnencryptedHTTP2 and disabling HTTP1
causes http:// requests to be made over unencrypted HTTP/2
connections.

For #67816

Change-Id: I2763c4cdec1c2bc6bb8157edb93b94377de8a59b
Reviewed-on: https://go-review.googlesource.com/c/go/+/622976
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
api/next/67816.txt [new file with mode: 0644]
doc/next/6-stdlib/99-minor/net/http/67816.md [new file with mode: 0644]
src/net/http/http.go
src/net/http/server.go
src/net/http/transport.go
src/net/http/transport_test.go