5 instantiations of SslApplicationProtocol
System.Net.Quic (1)
System\Net\Quic\QuicConnection.cs (1)
625
_negotiatedApplicationProtocol = new
SslApplicationProtocol
(new Span<byte>(data.NegotiatedAlpn, data.NegotiatedAlpnLength).ToArray());
System.Net.Security (4)
System\Net\Security\SslApplicationProtocol.cs (3)
19
public static readonly SslApplicationProtocol Http3 = new
SslApplicationProtocol
(s_http3Utf8, copy: false);
21
public static readonly SslApplicationProtocol Http2 = new
SslApplicationProtocol
(s_http2Utf8, copy: false);
23
public static readonly SslApplicationProtocol Http11 = new
SslApplicationProtocol
(s_http11Utf8, copy: false);
System\Net\Security\SslStream.cs (1)
573
return _connectionInfo.ApplicationProtocol != null ? new
SslApplicationProtocol
(_connectionInfo.ApplicationProtocol, false) : default;
65 references to SslApplicationProtocol
Microsoft.AspNetCore.Connections.Abstractions (1)
TlsConnectionCallbackOptions.cs (1)
31
public List<
SslApplicationProtocol
> ApplicationProtocols { get; set; } = default!;
Microsoft.AspNetCore.Server.Kestrel.Core (10)
HttpsConfigurationService.cs (4)
153
ApplicationProtocols = sslServerAuthenticationOptions.ApplicationProtocols ?? new List<
SslApplicationProtocol
> {
SslApplicationProtocol
.Http3 },
162
ApplicationProtocols = new List<
SslApplicationProtocol
> {
SslApplicationProtocol
.Http3 },
Internal\TlsConnectionFeature.cs (1)
144
|| _sslStream.NegotiatedApplicationProtocol ==
SslApplicationProtocol
.Http2)
Middleware\HttpsConnectionMiddleware.cs (5)
389
serverOptions.ApplicationProtocols = new List<
SslApplicationProtocol
>();
394
serverOptions.ApplicationProtocols.Add(
SslApplicationProtocol
.Http2);
401
serverOptions.ApplicationProtocols.Add(
SslApplicationProtocol
.Http11);
575
ApplicationProtocols = new List<
SslApplicationProtocol
>() {
SslApplicationProtocol
.Http3 },
netstandard (1)
netstandard.cs (1)
1247
[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Net.Security.
SslApplicationProtocol
))]
System.Net.Http (13)
src\runtime\src\libraries\Common\src\System\Net\Security\SslClientAuthenticationOptionsExtensions.cs (1)
22
ApplicationProtocols = options.ApplicationProtocols != null ? new List<
SslApplicationProtocol
>(options.ApplicationProtocols) : null,
System\Net\Http\SocketsHttpHandler\ConnectionPool\HttpConnectionPool.cs (10)
31
private static readonly List<
SslApplicationProtocol
> s_http3ApplicationProtocols = new List<
SslApplicationProtocol
>() {
SslApplicationProtocol
.Http3 };
32
private static readonly List<
SslApplicationProtocol
> s_http2ApplicationProtocols = new List<
SslApplicationProtocol
>() {
SslApplicationProtocol
.Http2,
SslApplicationProtocol
.Http11 };
33
private static readonly List<
SslApplicationProtocol
> s_http2OnlyApplicationProtocols = new List<
SslApplicationProtocol
>() {
SslApplicationProtocol
.Http2 };
System\Net\Http\SocketsHttpHandler\ConnectionPool\HttpConnectionPool.Http2.cs (1)
194
if (sslStream.NegotiatedApplicationProtocol ==
SslApplicationProtocol
.Http2)
System\Net\Http\SocketsHttpHandler\ConnectionPool\HttpConnectionPool.Http3.cs (1)
270
if (quicConnection.NegotiatedApplicationProtocol !=
SslApplicationProtocol
.Http3)
System.Net.Quic (11)
System\Net\Quic\Internal\MsQuicConfiguration.Cache.cs (5)
34
public readonly List<
SslApplicationProtocol
> ApplicationProtocols;
37
public CacheKey(QUIC_SETTINGS settings, QUIC_CREDENTIAL_FLAGS flags, X509Certificate? certificate, ReadOnlyCollection<X509Certificate2>? intermediates, List<
SslApplicationProtocol
> alpnProtocols, QUIC_ALLOWED_CIPHER_SUITE_FLAGS allowedCipherSuites)
66
ApplicationProtocols = new List<
SslApplicationProtocol
>(alpnProtocols);
106
foreach (
var
protocol in ApplicationProtocols)
117
private static MsQuicConfigurationSafeHandle GetCachedCredentialOrCreate(QUIC_SETTINGS settings, QUIC_CREDENTIAL_FLAGS flags, X509Certificate? certificate, ReadOnlyCollection<X509Certificate2>? intermediates, List<
SslApplicationProtocol
> alpnProtocols, QUIC_ALLOWED_CIPHER_SUITE_FLAGS allowedCipherSuites)
System\Net\Quic\Internal\MsQuicConfiguration.cs (3)
124
private static MsQuicConfigurationSafeHandle Create(QuicConnectionOptions options, QUIC_CREDENTIAL_FLAGS flags, X509Certificate? certificate, ReadOnlyCollection<X509Certificate2>? intermediates, List<
SslApplicationProtocol
>? alpnProtocols, CipherSuitesPolicy? cipherSuitesPolicy, EncryptionPolicy encryptionPolicy)
129
throw new ArgumentException(SR.Format(SR.net_quic_not_null_not_empty_connection, nameof(
SslApplicationProtocol
)), nameof(options));
204
private static unsafe MsQuicConfigurationSafeHandle CreateInternal(QUIC_SETTINGS settings, QUIC_CREDENTIAL_FLAGS flags, X509Certificate? certificate, ReadOnlyCollection<X509Certificate2>? intermediates, List<
SslApplicationProtocol
> alpnProtocols, QUIC_ALLOWED_CIPHER_SUITE_FLAGS allowedCipherSuites)
System\Net\Quic\QuicConnection.cs (2)
217
private
SslApplicationProtocol
_negotiatedApplicationProtocol;
298
public
SslApplicationProtocol
NegotiatedApplicationProtocol => _negotiatedApplicationProtocol;
System\Net\Quic\QuicListenerOptions.cs (1)
27
public List<
SslApplicationProtocol
> ApplicationProtocols { get; set; } = null!;
System.Net.Security (29)
src\runtime\src\libraries\Common\src\Interop\Unix\System.Security.Cryptography.Native\Interop.OpenSsl.cs (1)
1034
if (!(options?.ApplicationProtocols is List<
SslApplicationProtocol
> protocolList))
src\runtime\src\libraries\Common\src\Interop\Unix\System.Security.Cryptography.Native\Interop.Ssl.cs (5)
250
internal static int GetAlpnProtocolListSerializedLength(List<
SslApplicationProtocol
> applicationProtocols)
253
foreach (
SslApplicationProtocol
protocol in applicationProtocols)
271
internal static void SerializeAlpnProtocolList(List<
SslApplicationProtocol
> applicationProtocols, Span<byte> buffer)
277
foreach (
SslApplicationProtocol
protocol in applicationProtocols)
285
internal static unsafe int SslSetAlpnProtos(SafeSslHandle ssl, List<
SslApplicationProtocol
> applicationProtocols)
System\Net\Security\SslApplicationProtocol.cs (13)
10
public readonly struct SslApplicationProtocol : IEquatable<
SslApplicationProtocol
>
18
/// <summary>Defines a <see cref="
SslApplicationProtocol
"/> instance for HTTP 3.0.</summary>
19
public static readonly
SslApplicationProtocol
Http3 = new SslApplicationProtocol(s_http3Utf8, copy: false);
20
/// <summary>Defines a <see cref="
SslApplicationProtocol
"/> instance for HTTP 2.0.</summary>
21
public static readonly
SslApplicationProtocol
Http2 = new SslApplicationProtocol(s_http2Utf8, copy: false);
22
/// <summary>Defines a <see cref="
SslApplicationProtocol
"/> instance for HTTP 1.1.</summary>
23
public static readonly
SslApplicationProtocol
Http11 = new SslApplicationProtocol(s_http11Utf8, copy: false);
54
public bool Equals(
SslApplicationProtocol
other) =>
57
public override bool Equals([NotNullWhen(true)] object? obj) => obj is
SslApplicationProtocol
protocol && Equals(protocol);
108
public static bool operator ==(
SslApplicationProtocol
left,
SslApplicationProtocol
right) =>
111
public static bool operator !=(
SslApplicationProtocol
left,
SslApplicationProtocol
right) =>
System\Net\Security\SslAuthenticationOptions.cs (1)
199
internal List<
SslApplicationProtocol
>? ApplicationProtocols { get; set; }
System\Net\Security\SslClientAuthenticationOptions.cs (1)
39
public List<
SslApplicationProtocol
>? ApplicationProtocols { get; set; }
System\Net\Security\SslConnectionInfo.cs (3)
9
private static readonly byte[] s_http1 =
SslApplicationProtocol
.Http11.Protocol.ToArray();
10
private static readonly byte[] s_http2 =
SslApplicationProtocol
.Http2.Protocol.ToArray();
11
private static readonly byte[] s_http3 =
SslApplicationProtocol
.Http3.Protocol.ToArray();
System\Net\Security\SslServerAuthenticationOptions.cs (1)
36
public List<
SslApplicationProtocol
>? ApplicationProtocols { get; set; }
System\Net\Security\SslStream.cs (1)
568
public
SslApplicationProtocol
NegotiatedApplicationProtocol
System\Net\Security\TlsFrameHelper.cs (3)
725
if (protocol.SequenceEqual(
SslApplicationProtocol
.Http2.Protocol.Span))
734
else if (protocolLength ==
SslApplicationProtocol
.Http11.Protocol.Length &&
735
protocol.SequenceEqual(
SslApplicationProtocol
.Http11.Protocol.Span))