diff --git a/src/Microsoft.AspNetCore.Server.WebListener/FeatureContext.cs b/src/Microsoft.AspNetCore.Server.WebListener/FeatureContext.cs index 4068da2..dd04082 100644 --- a/src/Microsoft.AspNetCore.Server.WebListener/FeatureContext.cs +++ b/src/Microsoft.AspNetCore.Server.WebListener/FeatureContext.cs @@ -16,6 +16,7 @@ // permissions and limitations under the License. using System; +using System.Globalization; using System.IO; using System.Net; using System.Net.WebSockets; @@ -65,6 +66,7 @@ internal class FeatureContext : private IPAddress _localIpAddress; private int? _remotePort; private int? _localPort; + private string _connectionId; private string _requestId; private X509Certificate2 _clientCert; private ClaimsPrincipal _user; @@ -270,6 +272,19 @@ int IHttpConnectionFeature.RemotePort set { _remotePort = value; } } + string IHttpConnectionFeature.ConnectionId + { + get + { + if (_connectionId == null) + { + _connectionId = Request.ConnectionId.ToString(CultureInfo.InvariantCulture); + } + return _connectionId; + } + set { _connectionId = value; } + } + X509Certificate2 ITlsConnectionFeature.ClientCertificate { get diff --git a/src/Microsoft.Net.Http.Server/RequestProcessing/Request.cs b/src/Microsoft.Net.Http.Server/RequestProcessing/Request.cs index 27904ed..953556d 100644 --- a/src/Microsoft.Net.Http.Server/RequestProcessing/Request.cs +++ b/src/Microsoft.Net.Http.Server/RequestProcessing/Request.cs @@ -160,7 +160,7 @@ internal SslStatus SslStatus } } - internal ulong ConnectionId + public ulong ConnectionId { get {