Details
-
Type:
Bug
-
Status: Closed
-
Priority:
P3: Somewhat important
-
Resolution: Done
-
Affects Version/s: 5.15.0, 5.15.2
-
Fix Version/s: 6.1.2, 6.2.0 Alpha
-
Component/s: Network
-
Labels:None
-
Environment:Ubuntu 18.04, Qt 5.15.2 or 5.15.1.
-
Platform/s:
-
Commits:46940ca73791e87e2366b80ac2884b3bcce716ce (qt/qtbase/dev) d684a164c483610a1b548c027fa9b63dcaf80d2b (qt/qtbase/6.2) a6a2c56c96ed235bf3dfb03484f8c472e48221e5 (qt/qtbase/6.1) 505920e6b78a249d54f1e6257348a024e723d03e (qt/tqtc-qtbase/5.15)
Description
Incorrect parsing of HTTP2 frame headers.
This happens when using Netty as the server, in the Java gRPC implementation server, in QtProtobuf, or with the `envoy` proxy server. The problem does not depend on the use of TLS and I can repeat it without encryption. It seems it does not correctly parse the HTTP2.0 protocol frame headers.
As result i can't use https://github.com/semlanik/qtprotobuf and my gRPC server on Java.Dependent issue in downstream projects https://github.com/qutebrowser/qutebrowser/issues/5588
https://github.com/semlanik/qtprotobuf/issues/228
qt.network.http2: connection error: SETTINGS invalid number of concurrent streams qt.network.http2: stream 1 finished with error: "SETTINGS invalid number of concurrent streams" QNetworkReply::ProtocolFailure "SETTINGS invalid number of concurrent streams"
I append code for reproduce