Include client certificate feature renames.

This commit is contained in:
Chris Ross 2014-06-19 11:55:37 -07:00
parent ecfd1bbe60
commit 741d5b57ee
2 changed files with 9 additions and 8 deletions

View File

@ -35,7 +35,7 @@ namespace Microsoft.AspNet.Server.WebListener
IHttpConnectionFeature, IHttpConnectionFeature,
IHttpResponseFeature, IHttpResponseFeature,
IHttpSendFileFeature, IHttpSendFileFeature,
IHttpTransportLayerSecurityFeature, IHttpClientCertificateFeature,
IHttpRequestLifetimeFeature, IHttpRequestLifetimeFeature,
IHttpWebSocketFeature, IHttpWebSocketFeature,
IHttpOpaqueUpgradeFeature IHttpOpaqueUpgradeFeature
@ -89,7 +89,7 @@ namespace Microsoft.AspNet.Server.WebListener
if (Request.IsSecureConnection) if (Request.IsSecureConnection)
{ {
// TODO: Should this feature be conditional? Should we add this for HTTP requests? // TODO: Should this feature be conditional? Should we add this for HTTP requests?
_features.Add(typeof(IHttpTransportLayerSecurityFeature), this); _features.Add(typeof(IHttpClientCertificateFeature), this);
} }
_features.Add(typeof(IHttpResponseFeature), this); _features.Add(typeof(IHttpResponseFeature), this);
_features.Add(typeof(IHttpSendFileFeature), this); _features.Add(typeof(IHttpSendFileFeature), this);
@ -295,7 +295,7 @@ namespace Microsoft.AspNet.Server.WebListener
set { _remotePort = value; } set { _remotePort = value; }
} }
X509Certificate IHttpTransportLayerSecurityFeature.ClientCertificate X509Certificate IHttpClientCertificateFeature.ClientCertificate
{ {
get get
{ {
@ -308,12 +308,13 @@ namespace Microsoft.AspNet.Server.WebListener
set { _clientCert = value; } set { _clientCert = value; }
} }
async Task IHttpTransportLayerSecurityFeature.LoadAsync() async Task<X509Certificate> IHttpClientCertificateFeature.GetClientCertificateAsync()
{ {
if (_clientCert == null) if (_clientCert == null)
{ {
_clientCert = await Request.GetClientCertificateAsync(); _clientCert = await Request.GetClientCertificateAsync();
} }
return _clientCert;
} }
Stream IHttpResponseFeature.Body Stream IHttpResponseFeature.Body

View File

@ -85,9 +85,9 @@ namespace Microsoft.AspNet.Server.WebListener
using (Utilities.CreateHttpsServer(async env => using (Utilities.CreateHttpsServer(async env =>
{ {
var httpContext = new DefaultHttpContext((IFeatureCollection)env); var httpContext = new DefaultHttpContext((IFeatureCollection)env);
var tls = httpContext.GetFeature<IHttpTransportLayerSecurityFeature>(); var tls = httpContext.GetFeature<IHttpClientCertificateFeature>();
Assert.NotNull(tls); Assert.NotNull(tls);
await tls.LoadAsync(); await tls.GetClientCertificateAsync();
Assert.Null(tls.ClientCertificate); Assert.Null(tls.ClientCertificate);
})) }))
{ {
@ -102,9 +102,9 @@ namespace Microsoft.AspNet.Server.WebListener
using (Utilities.CreateHttpsServer(async env => using (Utilities.CreateHttpsServer(async env =>
{ {
var httpContext = new DefaultHttpContext((IFeatureCollection)env); var httpContext = new DefaultHttpContext((IFeatureCollection)env);
var tls = httpContext.GetFeature<IHttpTransportLayerSecurityFeature>(); var tls = httpContext.GetFeature<IHttpClientCertificateFeature>();
Assert.NotNull(tls); Assert.NotNull(tls);
await tls.LoadAsync(); await tls.GetClientCertificateAsync();
Assert.NotNull(tls.ClientCertificate); Assert.NotNull(tls.ClientCertificate);
})) }))
{ {