]> Cypherpunks repositories - gostls13.git/commit
net/http: synchronize "100 Continue" write and Handler writes
authorRuss Cox <rsc@golang.org>
Mon, 13 Jul 2020 17:27:22 +0000 (13:27 -0400)
committerKatie Hockman <katie@golang.org>
Tue, 14 Jul 2020 17:12:34 +0000 (17:12 +0000)
commitfa98f46741f818913a8c11b877520a548715131f
tree3d149d87dad36dcb3bb29f0386a8f3182b693c4b
parent82175e699a2e2cd83d3aa34949e9b922d66d52f5
net/http: synchronize "100 Continue" write and Handler writes

The expectContinueReader writes to the connection on the first
Request.Body read. Since a Handler might be doing a read in parallel or
before a write, expectContinueReader needs to synchronize with the
ResponseWriter, and abort if a response already went out.

The tests will land in a separate CL.

Fixes #34902
Fixes CVE-2020-15586

Change-Id: Icdd8dd539f45e8863762bd378194bb4741e875fc
Reviewed-on: https://team-review.git.corp.google.com/c/golang/go-private/+/793350
Reviewed-by: Filippo Valsorda <valsorda@google.com>
Reviewed-on: https://go-review.googlesource.com/c/go/+/242598
Run-TryBot: Katie Hockman <katie@golang.org>
Reviewed-by: Filippo Valsorda <filippo@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
src/net/http/server.go