Skip to content

Commit 8464987

Browse files
committed
websocket: add extented payload length check for the case of 7+64 bits
Fixes golang/go#11999. Change-Id: I7ee0966d2e8f79973814f48afc7e8f2cd4af1e50 Reviewed-on: https://go-review.googlesource.com/13059 Reviewed-by: Andrew Gerrand <[email protected]>
1 parent 6ba52e3 commit 8464987

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

websocket/hybi.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,9 @@ func (buf hybiFrameReaderFactory) NewFrameReader() (frame frameReader, err error
157157
if err != nil {
158158
return
159159
}
160+
if lengthFields == 8 && i == 0 { // MSB must be zero when 7+64 bits
161+
b &= 0x7f
162+
}
160163
header = append(header, b)
161164
hybiFrame.header.Length = hybiFrame.header.Length*256 + int64(b)
162165
}

0 commit comments

Comments
 (0)