Cause a connection abort when HTTP/2-only frame and settings types are received in...
authorCory Nelson <phrosty@gmail.com>
Thu, 28 Jan 2021 16:27:46 +0000 (08:27 -0800)
committerGitHub <noreply@github.com>
Thu, 28 Jan 2021 16:27:46 +0000 (08:27 -0800)
commit8ca72ce7c5ac0b61aea40f85a2edc665526262e7
treec81bae2c18e2662fc56f0fa42277bdee481c2173
parent0b2681d62e5d043a16e5975230914742b0c434b2
Cause a connection abort when HTTP/2-only frame and settings types are received in HTTP/3. (Progress toward HTTP/3 draft 31 compat) (#43287)

Send h3-29 through h3-31 for ALPN as we are compatible with all of them.
Move some of the loopback test code into the stream class rather than connection class.
Add a basic test for SETTINGS frame receipt.
Fix some tests that were explicitly using Http3LoopbackServer and did not see the new "Mock" QUIC setting introduced in https://github.com/dotnet/runtime/pull/43076
12 files changed:
src/libraries/Common/src/System/Net/Http/aspnetcore/Http3/Frames/Http3FrameType.cs
src/libraries/Common/src/System/Net/Http/aspnetcore/Http3/Http3SettingType.cs
src/libraries/Common/tests/System/Net/Http/Http3LoopbackConnection.cs
src/libraries/Common/tests/System/Net/Http/Http3LoopbackServer.cs
src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs
src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3Connection.cs
src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3RequestStream.cs
src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/HttpConnectionPool.cs
src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.AltSvc.cs
src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs
src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTestBase.SocketsHttpHandler.cs
src/libraries/System.Net.Http/tests/FunctionalTests/SocketsHttpHandlerTest.cs