Updates http2 to x/net/http2 git rev
569280fa for:
http2: fix over-aggressive ignoring of frames while in "go away" mode
https://golang.org/cl/32583
Fixes #17733
Change-Id: I4008d2e14ce89782ce7e18b441b1181f98623b9d
Reviewed-on: https://go-review.googlesource.com/32584
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: David Crawshaw <crawshaw@golang.org>
return http2ConnectionError(http2ErrCodeProtocol)
}
- if sc.inGoAway {
+ if sc.inGoAway && sc.goAwayCode != http2ErrCodeNo {
return nil
}
sc.writeFrame(http2FrameWriteRequest{write: http2writePingAck{f}})
func (sc *http2serverConn) processWindowUpdate(f *http2WindowUpdateFrame) error {
sc.serveG.check()
- if sc.inGoAway {
- return nil
- }
switch {
case f.StreamID != 0:
state, st := sc.state(f.StreamID)
func (sc *http2serverConn) processResetStream(f *http2RSTStreamFrame) error {
sc.serveG.check()
- if sc.inGoAway {
- return nil
- }
state, st := sc.state(f.StreamID)
if state == http2stateIdle {
}
return nil
}
- if sc.inGoAway {
- return nil
- }
if err := f.ForeachSetting(sc.processSetting); err != nil {
return err
}
func (sc *http2serverConn) processData(f *http2DataFrame) error {
sc.serveG.check()
- if sc.inGoAway {
+ if sc.inGoAway && sc.goAwayCode != http2ErrCodeNo {
return nil
}
data := f.Data()