2 instantiations of QuicConnection
System.Net.Quic (2)
System\Net\Quic\QuicConnection.cs (1)
68QuicConnection connection = new QuicConnection();
System\Net\Quic\QuicListener.cs (1)
337QuicConnection connection = new QuicConnection(data.Connection, data.Info);
134 references to QuicConnection
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic (6)
Internal\QuicConnectionContext.cs (3)
26private readonly QuicConnection _connection; 38public QuicConnectionContext(QuicConnection connection, QuicTransportContext context) 282internal QuicConnection GetInnerConnection()
Internal\QuicConnectionListener.cs (3)
28internal readonly ConditionalWeakTable<QuicConnection, QuicConnectionContext> _pendingConnections; 53_pendingConnections = new ConditionalWeakTable<QuicConnection, QuicConnectionContext>(); 157var quicConnection = await _listener.AcceptConnectionAsync(cancellationToken);
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic.Tests (82)
QuicConnectionContextTests.cs (33)
37await using var clientConnection = await QuicConnection.ConnectAsync(options); 61await using var clientConnection = await QuicConnection.ConnectAsync(options); 87await using var clientConnection = await QuicConnection.ConnectAsync(options); 128await using var clientConnection = await QuicConnection.ConnectAsync(options); 154await using var quicConnection = await QuicConnection.ConnectAsync(options); 196await using var quicConnection = await QuicConnection.ConnectAsync(options); 246await using var quicConnection = await QuicConnection.ConnectAsync(options); 291await using var quicConnection = await QuicConnection.ConnectAsync(options); 317await using var clientConnection = await QuicConnection.ConnectAsync(options); 360await using var clientConnection = await QuicConnection.ConnectAsync(options); 405await using var clientConnection = await QuicConnection.ConnectAsync(options); 454await using var clientConnection = await QuicConnection.ConnectAsync(options); 512await using var clientConnection = await QuicConnection.ConnectAsync(options); 563await using var clientConnection = await QuicConnection.ConnectAsync(options); 640await using var clientConnection = await QuicConnection.ConnectAsync(options); 719await using var clientConnection = await QuicConnection.ConnectAsync(options); 737QuicConnection QuicConnection,
QuicConnectionListenerTests.cs (20)
53await using var clientConnection = await QuicConnection.ConnectAsync(options); 74await using var clientConnection1 = await QuicConnection.ConnectAsync( 88await QuicConnection.ConnectAsync( 99await using var clientConnection2 = await QuicConnection.ConnectAsync( 122await using var quicConnection = await QuicConnection.ConnectAsync(options); 158await using var clientConnection = await QuicConnection.ConnectAsync(options); 184await Assert.ThrowsAsync<AuthenticationException>(() => QuicConnection.ConnectAsync(options).AsTask()); 257var ex = await Assert.ThrowsAsync<AuthenticationException>(() => QuicConnection.ConnectAsync(options).AsTask()).DefaultTimeout(); 263await using var clientConnection = await QuicConnection.ConnectAsync(options).DefaultTimeout(); 321await using var clientConnection = await QuicConnection.ConnectAsync(options).DefaultTimeout(); 356var clientConnectionTask = QuicConnection.ConnectAsync(options); 364await using var clientConnection = await clientConnectionTask.DefaultTimeout(); 397var clientConnectionTask = QuicConnection.ConnectAsync(options); 452await using var clientConnection = await QuicConnection.ConnectAsync(options).DefaultTimeout();
QuicStreamContextTests.cs (28)
38await using var clientConnection = await QuicConnection.ConnectAsync(options); 62await using var clientConnection = await QuicConnection.ConnectAsync(options); 110await using var clientConnection = await QuicConnection.ConnectAsync(options); 178await using var clientConnection = await QuicConnection.ConnectAsync(options); 235await using var clientConnection = await QuicConnection.ConnectAsync(options); 257await using var quicConnection = await QuicConnection.ConnectAsync(options); 301await using var quicConnection = await QuicConnection.ConnectAsync(options); 335await using var quicConnection = await QuicConnection.ConnectAsync(options); 374await using var quicConnection = await QuicConnection.ConnectAsync(options); 405await using var quicConnection = await QuicConnection.ConnectAsync(options); 446await using var quicConnection = await QuicConnection.ConnectAsync(options); 490await using var quicConnection = await QuicConnection.ConnectAsync(options); 540await using var clientConnection = await QuicConnection.ConnectAsync(options); 567await using var clientConnection = await QuicConnection.ConnectAsync(options);
QuicTestHelpers.cs (1)
143public static async Task<QuicStreamContext> CreateAndCompleteBidirectionalStreamGracefully(QuicConnection clientConnection, MultiplexedConnectionContext serverConnection, ILogger logger)
System.Net.Http (10)
System\Net\Http\SocketsHttpHandler\ConnectHelper.cs (2)
115public static async ValueTask<QuicConnection> ConnectQuicAsync(HttpRequestMessage request, DnsEndPoint endPoint, TimeSpan idleTimeout, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken) 121return await QuicConnection.ConnectAsync(new QuicClientConnectionOptions()
System\Net\Http\SocketsHttpHandler\ConnectionPool\HttpConnectionPool.cs (1)
420if (QuicConnection.IsSupported)
System\Net\Http\SocketsHttpHandler\ConnectionPool\HttpConnectionPool.Http3.cs (1)
159QuicConnection quicConnection;
System\Net\Http\SocketsHttpHandler\Http3Connection.cs (6)
25private QuicConnection? _connection; 69public Http3Connection(HttpConnectionPool pool, HttpAuthority authority, QuicConnection connection, bool includeAltUsedHeader) 133QuicConnection connection = _connection; 140Trace($"{nameof(QuicConnection)} failed to close: {closeTask.Exception!.InnerException}"); 149Trace($"{nameof(QuicConnection)} failed to dispose: {ex}"); 175QuicConnection? conn = _connection;
System.Net.Quic (36)
System\Net\Quic\QuicConnection.cs (13)
29/// <see cref="QuicConnection" /> itself doesn't send or receive data but rather allows opening and/or accepting multiple <see cref="QuicStream" />. 32/// <see cref="QuicConnection" /> can either be accepted from <see cref="QuicListener.AcceptConnectionAsync(CancellationToken)" /> (inbound connection), 33/// or create with a static method <see cref="QuicConnection.ConnectAsync(System.Net.Quic.QuicClientConnectionOptions, CancellationToken)" /> (outbound connection). 35/// Each connection can then open outbound stream: <see cref="QuicConnection.OpenOutboundStreamAsync(QuicStreamType, CancellationToken)" />, 36/// or accept an inbound stream: <see cref="QuicConnection.AcceptInboundStreamAsync(CancellationToken)" />. 50/// Creates a new <see cref="QuicConnection"/> and connects it to the peer. 55public static ValueTask<QuicConnection> ConnectAsync(QuicClientConnectionOptions options, CancellationToken cancellationToken = default) 66static async ValueTask<QuicConnection> StartConnectAsync(QuicClientConnectionOptions options, CancellationToken cancellationToken) 68QuicConnection connection = new QuicConnection(); 123if (target is QuicConnection connection) 238/// Initializes a new instance of an outbound <see cref="QuicConnection" />. 269/// Initializes a new instance of an inbound <see cref="QuicConnection" />. 650if (!stateHandle.IsAllocated || stateHandle.Target is not QuicConnection instance)
System\Net\Quic\QuicConnection.SslConnectionOptions.cs (2)
26private readonly QuicConnection _connection; 55public SslConnectionOptions(QuicConnection connection, bool isClient,
System\Net\Quic\QuicConnectionOptions.cs (6)
12/// Collection of receive window sizes for <see cref="QuicConnection"/> as a whole and for individual <see cref="QuicStream"/> types. 54/// Shared options for both client (outbound) and server (inbound) <see cref="QuicConnection" />. 91/// Error code used for <see cref="QuicConnection.CloseAsync(long, Threading.CancellationToken)"/> when the connection gets disposed. 95/// To use different close error code, call <see cref="QuicConnection.CloseAsync(long, Threading.CancellationToken)"/> explicitly before disposing. 146/// Options for client (outbound) <see cref="QuicConnection" />. 191/// Options for server (inbound) <see cref="QuicConnection" />. Provided by <see cref="QuicListenerOptions.ConnectionOptionsCallback"/>.
System\Net\Quic\QuicError.cs (1)
7/// Defines the various error conditions for <see cref="QuicListener"/>, <see cref="QuicConnection"/> and <see cref="QuicStream"/> operations.
System\Net\Quic\QuicListener.cs (11)
24/// <see cref="QuicListener" /> allows accepting multiple <see cref="QuicConnection" />. 90private readonly Func<QuicConnection, SslClientHelloInfo, CancellationToken, ValueTask<QuicServerConnectionOptions>> _connectionOptionsCallback; 93/// Incoming connections waiting to be accepted via AcceptAsync. The item will either be fully connected <see cref="QuicConnection"/> or <see cref="Exception"/> if the handshake failed. 164/// Accepts an inbound <see cref="QuicConnection" />. 171/// <returns>A task that will contain a fully connected <see cref="QuicConnection" /> which successfully finished the handshake and is ready to be used.</returns> 172public async ValueTask<QuicConnection> AcceptConnectionAsync(CancellationToken cancellationToken = default) 182if (item is QuicConnection connection) 205/// It does await <see cref="QuicConnection.FinishHandshakeAsync"/> but that never gets propagated to the caller for which the method ends with the first asynchronously processed <c>await</c>. 210private async void StartConnectionHandshake(QuicConnection connection, SslClientHelloInfo clientHello) 337QuicConnection connection = new QuicConnection(data.Connection, data.Info); 436if (item is QuicConnection connection)
System\Net\Quic\QuicListenerOptions.cs (1)
37public Func<QuicConnection, SslClientHelloInfo, CancellationToken, ValueTask<QuicServerConnectionOptions>> ConnectionOptionsCallback { get; set; } = null!;
System\Net\Quic\QuicStream.cs (2)
156/// <param name="connectionHandle"><see cref="QuicConnection"/> safe handle, used to increment/decrement reference count with each associated stream.</param> 200/// <param name="connectionHandle"><see cref="QuicConnection"/> safe handle, used to increment/decrement reference count with each associated stream.</param>