• Tom Bergan's avatar
    http2: fix state tracking for pushed streams · 55a3084c
    Tom Bergan authored
    Fix sc.state, which was returning "idle" instead of "closed" if the max
    pushed stream ID happened to exceed the max client stream ID. This caused
    us to erroneously generate connection errors because we believed a state
    invariant had been violated when it had not.
    
    I also renamed maxStreamID to maxClientStreamID for clarity, since we
    need to track client-generated and server-generated stream IDs separately.
    
    Fixes golang/go#17777
    
    Change-Id: Id3d5700d79cc699a267bd91d6ebace0770fa62fc
    Reviewed-on: https://go-review.googlesource.com/32755Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
    Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    55a3084c
Name
Last commit
Last update
..
h2demo Loading commit data...
h2i Loading commit data...
hpack Loading commit data...
testdata Loading commit data...
.gitignore Loading commit data...
Dockerfile Loading commit data...
Makefile Loading commit data...
README Loading commit data...
client_conn_pool.go Loading commit data...
configure_transport.go Loading commit data...
errors.go Loading commit data...
errors_test.go Loading commit data...
fixed_buffer.go Loading commit data...
fixed_buffer_test.go Loading commit data...
flow.go Loading commit data...
flow_test.go Loading commit data...
frame.go Loading commit data...
frame_test.go Loading commit data...
go16.go Loading commit data...
go17.go Loading commit data...
go17_not18.go Loading commit data...
go18.go Loading commit data...
go18_test.go Loading commit data...
gotrack.go Loading commit data...
gotrack_test.go Loading commit data...
headermap.go Loading commit data...
http2.go Loading commit data...
http2_test.go Loading commit data...
not_go16.go Loading commit data...
not_go17.go Loading commit data...
not_go18.go Loading commit data...
pipe.go Loading commit data...
pipe_test.go Loading commit data...
server.go Loading commit data...
server_push_test.go Loading commit data...
server_test.go Loading commit data...
transport.go Loading commit data...
transport_test.go Loading commit data...
write.go Loading commit data...
writesched.go Loading commit data...
writesched_priority.go Loading commit data...
writesched_priority_test.go Loading commit data...
writesched_random.go Loading commit data...
writesched_random_test.go Loading commit data...
writesched_test.go Loading commit data...
z_spec_test.go Loading commit data...