summaryrefslogtreecommitdiffstats
path: root/src/network/access/http2/http2frames.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/network/access/http2/http2frames.cpp')
-rw-r--r--src/network/access/http2/http2frames.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/network/access/http2/http2frames.cpp b/src/network/access/http2/http2frames.cpp
index 3b52204c7d3..e6a3474d7b0 100644
--- a/src/network/access/http2/http2frames.cpp
+++ b/src/network/access/http2/http2frames.cpp
@@ -34,7 +34,8 @@ FrameType Frame::type() const
quint32 Frame::streamID() const
{
Q_ASSERT(buffer.size() >= frameHeaderSize);
- return qFromBigEndian<quint32>(&buffer[5]);
+ // RFC 9113, 4.1: 31-bit Stream ID; lastValidStreamID(0x7FFFFFFF) masks out the reserved MSB
+ return qFromBigEndian<quint32>(&buffer[5]) & lastValidStreamID;
}
FrameFlags Frame::flags() const