Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Quarantine ClientCertificate_NoOrDelayed_Available_Ignored #41131

Closed
captainsafia opened this issue Apr 11, 2022 · 3 comments · Fixed by #52237
Closed

Quarantine ClientCertificate_NoOrDelayed_Available_Ignored #41131

captainsafia opened this issue Apr 11, 2022 · 3 comments · Fixed by #52237
Labels
area-networking Includes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractions feature-kestrel HTTP3 test-failure
Milestone

Comments

@captainsafia
Copy link
Member

Failing Test(s)

  • Interop.FunctionalTests.Http3.Http3TlsTests.ClientCertificate_NoOrDelayed_Available_Ignored(mode: NoCertificate)
  • Interop.FunctionalTests.Http3.Http3TlsTests.ClientCertificate_NoOrDelayed_Available_Ignored(mode: DelayCertificate)

Error Message

System.Net.Http.HttpRequestException: Connection has been shutdown by transport. Error Code: ALPN_NEG_FAILURE (127.0.0.1:61509)

Stacktrace

System.Net.Http.HttpRequestException : Connection has been shutdown by transport. Error Code: ALPN_NEG_FAILURE (127.0.0.1:61509)
[xUnit.net 00:00:04.71]       ---- System.Net.Quic.QuicException : Connection has been shutdown by transport. Error Code: ALPN_NEG_FAILURE
[xUnit.net 00:00:04.71]       Stack Trace:
[xUnit.net 00:00:04.71]            at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, QuicImplementationProvider quicImplementationProvider, DnsEndPoint endPoint, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken)
[xUnit.net 00:00:04.71]            at System.Net.Http.HttpConnectionPool.GetHttp3ConnectionAsync(HttpRequestMessage request, HttpAuthority authority, CancellationToken cancellationToken)
[xUnit.net 00:00:04.71]            at System.Net.Http.HttpConnectionPool.TrySendUsingHttp3Async(HttpRequestMessage request, CancellationToken cancellationToken)
[xUnit.net 00:00:04.71]            at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
[xUnit.net 00:00:04.71]            at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
[xUnit.net 00:00:04.71]         /_/src/Shared/TaskExtensions.cs(88,0): at Microsoft.AspNetCore.Testing.TaskExtensions.TimeoutAfter[T](Task`1 task, TimeSpan timeout, String filePath, Int32 lineNumber)
[xUnit.net 00:00:04.71]         /_/src/Servers/Kestrel/test/Interop.FunctionalTests/Http3/Http3TlsTests.cs(144,0): at Interop.FunctionalTests.Http3.Http3TlsTests.ClientCertificate_NoOrDelayed_Available_Ignored(ClientCertificateMode mode)
[xUnit.net 00:00:04.71]         --- End of stack trace from previous location ---
[xUnit.net 00:00:04.72]         ----- Inner Stack Trace -----
[xUnit.net 00:00:04.72]            at System.Net.Quic.Implementations.MsQuic.MsQuicConnection.HandleEventShutdownInitiatedByTransport(State state, ConnectionEvent& connectionEvent)
[xUnit.net 00:00:04.72]            at System.Net.Quic.Implementations.MsQuic.MsQuicConnection.NativeCallbackHandler(IntPtr connection, IntPtr context, ConnectionEvent* connectionEvent)
[xUnit.net 00:00:04.72]         --- End of stack trace from previous location ---
[xUnit.net 00:00:04.72]            at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, QuicImplementationProvider quicImplementationProvider, DnsEndPoint endPoint, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken)

Logs

Output:
[xUnit.net 00:00:04.72]         | [0.001s] TestLifetime Information: Starting test ClientCertificate_NoOrDelayed_Available_Ignored-DelayCertificate at 2022-04-09T13:09:07
[xUnit.net 00:00:04.72]         | [0.014s] Microsoft.Extensions.Hosting.Internal.Host Debug: Hosting starting
[xUnit.net 00:00:04.72]         | [0.045s] Microsoft.Hosting.Lifetime Information: Now listening on: https://[::]:61509
[xUnit.net 00:00:04.72]         | [0.046s] Microsoft.AspNetCore.Hosting.Diagnostics Debug: Loaded hosting startup assembly Interop.FunctionalTests
[xUnit.net 00:00:04.72]         | [0.046s] Microsoft.Hosting.Lifetime Information: Application started. Press Ctrl+C to shut down.
[xUnit.net 00:00:04.72]         | [0.046s] Microsoft.Hosting.Lifetime Information: Hosting environment: Production
[xUnit.net 00:00:04.72]         | [0.046s] Microsoft.Hosting.Lifetime Information: Content root path: C:\h\w\A92E0903\w\C0460A5A\e\
[xUnit.net 00:00:04.72]         | [0.046s] Microsoft.Extensions.Hosting.Internal.Host Debug: Hosting started
[xUnit.net 00:00:04.72]         | [0.890s] Microsoft.AspNetCore.Server.Kestrel.Transport.Quic Debug: Listener has aborted with exception: Operation aborted.
[xUnit.net 00:00:04.72]         | [0.901s] Interop.FunctionalTests.Http3.Http3TlsTests Error: Test threw an exception.
[xUnit.net 00:00:04.72]         | System.Net.Http.HttpRequestException: Connection has been shutdown by transport. Error Code: ALPN_NEG_FAILURE (127.0.0.1:61509)
[xUnit.net 00:00:04.72]         |  ---> System.Net.Quic.QuicException: Connection has been shutdown by transport. Error Code: ALPN_NEG_FAILURE
[xUnit.net 00:00:04.72]         |    at System.Net.Quic.Implementations.MsQuic.MsQuicConnection.HandleEventShutdownInitiatedByTransport(State state, ConnectionEvent& connectionEvent)
[xUnit.net 00:00:04.72]         |    at System.Net.Quic.Implementations.MsQuic.MsQuicConnection.NativeCallbackHandler(IntPtr connection, IntPtr context, ConnectionEvent* connectionEvent)
[xUnit.net 00:00:04.72]         | --- End of stack trace from previous location ---
[xUnit.net 00:00:04.72]         |    at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, QuicImplementationProvider quicImplementationProvider, DnsEndPoint endPoint, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken)
[xUnit.net 00:00:04.72]         |    --- End of inner exception stack trace ---
[xUnit.net 00:00:04.72]         |    at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, QuicImplementationProvider quicImplementationProvider, DnsEndPoint endPoint, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken)
[xUnit.net 00:00:04.72]         |    at System.Net.Http.HttpConnectionPool.GetHttp3ConnectionAsync(HttpRequestMessage request, HttpAuthority authority, CancellationToken cancellationToken)
[xUnit.net 00:00:04.72]         |    at System.Net.Http.HttpConnectionPool.TrySendUsingHttp3Async(HttpRequestMessage request, CancellationToken cancellationToken)
[xUnit.net 00:00:04.72]         |    at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
[xUnit.net 00:00:04.72]         |    at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
[xUnit.net 00:00:04.72]         |    at Microsoft.AspNetCore.Testing.TaskExtensions.TimeoutAfter[T](Task`1 task, TimeSpan timeout, String filePath, Int32 lineNumber) in /_/src/Shared/TaskExtensions.cs:line 88
[xUnit.net 00:00:04.72]         |    at Interop.FunctionalTests.Http3.Http3TlsTests.ClientCertificate_NoOrDelayed_Available_Ignored(ClientCertificateMode mode) in /_/src/Servers/Kestrel/test/Interop.FunctionalTests/Http3/Http3TlsTests.cs:line 144
[xUnit.net 00:00:04.72]         |    at Xunit.Sdk.TestInvoker`1.<>c__DisplayClass48_1.<<InvokeTestMethodAsync>b__1>d.MoveNext() in C:\Dev\xunit\xunit\src\xunit.execution\Sdk\Frameworks\Runners\TestInvoker.cs:line 264
[xUnit.net 00:00:04.72]         | --- End of stack trace from previous location ---
[xUnit.net 00:00:04.72]         |    at Xunit.Sdk.ExecutionTimer.AggregateAsync(Func`1 asyncAction) in C:\Dev\xunit\xunit\src\xunit.execution\Sdk\Frameworks\ExecutionTimer.cs:line 48
[xUnit.net 00:00:04.72]         |    at Xunit.Sdk.ExceptionAggregator.RunAsync(Func`1 code) in C:\Dev\xunit\xunit\src\xunit.core\Sdk\ExceptionAggregator.cs:line 96
[xUnit.net 00:00:04.72]         | [0.903s] TestLifetime Information: Finished test ClientCertificate_NoOrDelayed_Available_Ignored-DelayCertificate in 0.9016049s
  Passed Interop.FunctionalTests.Http2.Http2RequestTests.GET_RequestReturnsLargeData_GracefulShutdownDuringRequest_RequestGracefullyCompletes(hasTrailers: True) [1 s]
  Failed Interop.FunctionalTests.Http3.Http3TlsTests.ClientCertificate_NoOrDelayed_Available_Ignored(mode: NoCertificate) [243 ms]
  Error Message:
   System.Net.Http.HttpRequestException : Connection has been shutdown by transport. Error Code: ALPN_NEG_FAILURE (127.0.0.1:61505)
---- System.Net.Quic.QuicException : Connection has been shutdown by transport. Error Code: ALPN_NEG_FAILURE
  Stack Trace:
     at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, QuicImplementationProvider quicImplementationProvider, DnsEndPoint endPoint, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.GetHttp3ConnectionAsync(HttpRequestMessage request, HttpAuthority authority, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.TrySendUsingHttp3Async(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Testing.TaskExtensions.TimeoutAfter[T](Task`1 task, TimeSpan timeout, String filePath, Int32 lineNumber) in /_/src/Shared/TaskExtensions.cs:line 88
   at Interop.FunctionalTests.Http3.Http3TlsTests.ClientCertificate_NoOrDelayed_Available_Ignored(ClientCertificateMode mode) in /_/src/Servers/Kestrel/test/Interop.FunctionalTests/Http3/Http3TlsTests.cs:line 144
--- End of stack trace from previous location ---
----- Inner Stack Trace -----
   at System.Net.Quic.Implementations.MsQuic.MsQuicConnection.HandleEventShutdownInitiatedByTransport(State state, ConnectionEvent& connectionEvent)
   at System.Net.Quic.Implementations.MsQuic.MsQuicConnection.NativeCallbackHandler(IntPtr connection, IntPtr context, ConnectionEvent* connectionEvent)
--- End of stack trace from previous location ---
   at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, QuicImplementationProvider quicImplementationProvider, DnsEndPoint endPoint, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken)

Build

@Tratcher
Copy link
Member

This is a product bug / feature gap. Tracked by dotnet/runtime#57308.

@ghost
Copy link

ghost commented Apr 15, 2022

Thanks for contacting us.

We're moving this issue to the .NET 7 Planning milestone for future evaluation / consideration. We would like to keep this around to collect more feedback, which can help us with prioritizing this work. We will re-evaluate this issue, during our next planning meeting(s).
If we later determine, that the issue has no community involvement, or it's very rare and low-impact issue, we will close it - so that the team can focus on more important and high impact issues.
To learn more about what to expect next and how this issue will be handled you can read more about our triage process here.

@Tratcher Tratcher self-assigned this Sep 9, 2022
@amcasey amcasey added area-networking Includes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractions and removed area-runtime labels Jun 2, 2023
@Tratcher Tratcher removed their assignment Oct 25, 2023
@amcasey
Copy link
Member

amcasey commented Nov 21, 2023

This is a product bug / feature gap. Tracked by dotnet/runtime#57308.

This item has been completed.

amcasey added a commit to amcasey/aspnetcore that referenced this issue Nov 21, 2023
...now that the product functionality has been added.

Fixes dotnet#41131
amcasey added a commit that referenced this issue Nov 21, 2023
...now that the product functionality has been added.

Fixes #41131
@ghost ghost locked as resolved and limited conversation to collaborators Feb 7, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-networking Includes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractions feature-kestrel HTTP3 test-failure
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants