bug 798426 spdy/3 goaway frame has 8 byte payload r=honzab

--HG--
extra : rebase_source : 5dd9fb269da28c1fac76b3f574c2644aa9839fe4
This commit is contained in:
Patrick McManus 2012-10-05 15:03:24 -04:00
parent 7137ee34e5
commit 2d67c95f47

View File

@ -1233,7 +1233,7 @@ SpdySession3::HandleGoAway(SpdySession3 *self)
NS_ABORT_IF_FALSE(self->mFrameControlType == CONTROL_TYPE_GOAWAY,
"wrong control type");
if (self->mInputFrameDataSize != 4) {
if (self->mInputFrameDataSize != 8) {
LOG3(("SpdySession3::HandleGoAway %p GOAWAY had wrong amount of data %d",
self, self->mInputFrameDataSize));
return NS_ERROR_ILLEGAL_VALUE;
@ -1244,8 +1244,10 @@ SpdySession3::HandleGoAway(SpdySession3 *self)
PR_ntohl(reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get())[2]);
self->mCleanShutdown = true;
LOG3(("SpdySession3::HandleGoAway %p GOAWAY Last-Good-ID 0x%X.",
self, self->mGoAwayID));
LOG3(("SpdySession3::HandleGoAway %p GOAWAY Last-Good-ID 0x%X status 0x%X\n",
self, self->mGoAwayID,
PR_ntohl(reinterpret_cast<uint32_t *>(self->mInputFrameBuffer.get())[3])));
self->ResumeRecv();
self->ResetDownstreamState();
return NS_OK;