]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1.14-security] net/http: synchronize "100 Continue" write and Handl...
authorRuss Cox <rsc@golang.org>
Mon, 13 Jul 2020 17:27:22 +0000 (13:27 -0400)
committerKatie Hockman <katiehockman@google.com>
Mon, 13 Jul 2020 20:58:01 +0000 (20:58 +0000)
commitf3529ca9610be93ac4bb6fedc65429f7984227b6
tree305b0c795f159cf3ce23a9de85b243ec4799e86c
parent83b181c68bf332ac7948f145f33d128377a09c42
[release-branch.go1.14-security] 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>
(cherry picked from commit b5e504f4a07c572744b228fa1b10e3989c4c44f3)
Reviewed-on: https://team-review.git.corp.google.com/c/golang/go-private/+/793500
src/net/http/server.go