• Brad Fitzpatrick's avatar
    http2: fix protocol violation regression when writing certain request bodies · 7394c112
    Brad Fitzpatrick authored
    The mod_h2 workaround CL (git rev 28d1bd4f,
    https://golang.org/cl/25362) introduced a regression where the
    Transport could write two DATA frames, both with END_STREAM, if the
    Request.Body returned (non-0, io.EOF). strings.Reader, bytes.Reader
    are the most common Reader types used with HTTP requests and they only
    return (0, io.EOF) so we got generally lucky and things seemed to
    work, but other Readers do return (non-0, io.EOF), like the HTTP
    transport/server Readers. This is why we broke the HTTP proxy code,
    when proxying to HTTP/2.
    
    Updates golang/go#16788 (fixes after it's bundled into std)
    
    Change-Id: I42684017039eacfc27ee53e9c11431f713fdaca4
    Reviewed-on: https://go-review.googlesource.com/27406
    Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarChris Broadfoot <cbro@golang.org>
    7394c112
Name
Last commit
Last update
bpf Loading commit data...
context Loading commit data...
dict Loading commit data...
html Loading commit data...
http2 Loading commit data...
icmp Loading commit data...
idna Loading commit data...
internal Loading commit data...
ipv4 Loading commit data...
ipv6 Loading commit data...
lex/httplex Loading commit data...
netutil Loading commit data...
proxy Loading commit data...
publicsuffix Loading commit data...
route Loading commit data...
trace Loading commit data...
webdav Loading commit data...
websocket Loading commit data...
xsrftoken Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
AUTHORS Loading commit data...
CONTRIBUTING.md Loading commit data...
CONTRIBUTORS Loading commit data...
LICENSE Loading commit data...
PATENTS Loading commit data...
README Loading commit data...
codereview.cfg Loading commit data...