private Task LoadClientCertAsync() { try { if (!_environment.ClientCertNeedsInit) { return(TaskHelpers.Completed()); } return(_request.GetClientCertificateAsync() .Then(cert => { _environment.ClientCert = cert; _environment.ClientCertErrors = (_request.ClientCertificateError == 0) ? null : new Win32Exception(_request.ClientCertificateError); }) .Catch(errorInfo => { _environment.ClientCert = null; _environment.ClientCertErrors = null; // TODO: LOG return errorInfo.Handled(); })); } catch (HttpListenerException) { _environment.ClientCert = null; _environment.ClientCertErrors = null; // TODO: LOG return(TaskHelpers.Completed()); } }
private async Task LoadClientCertAsync() { try { if (!_environment.ClientCertNeedsInit) { return; } X509Certificate cert = await _request.GetClientCertificateAsync(); _environment.ClientCert = cert; _environment.ClientCertErrors = (_request.ClientCertificateError == 0) ? null : new Win32Exception(_request.ClientCertificateError); } catch (Exception) { _environment.ClientCert = null; _environment.ClientCertErrors = null; // TODO: LOG } }
public async Task GetClientCertificateAsync_NoCertificate_ReturnsNull() { HttpListenerRequest request = await GetRequest("POST", null, null); Assert.Null(request.GetClientCertificateAsync().Result); }
// // Summary: // Retrieves the client's X.509 v.3 certificate as an asynchronous operation. // // Returns: // Returns System.Threading.Tasks.Task`1.The task object representing the asynchronous // operation. The System.Threading.Tasks.Task`1.Result property on the task object // returns a System.Security.Cryptography.X509Certificates object that contains // the client's X.509 v.3 certificate. public Task <X509Certificate2> GetClientCertificateAsync() { return(request.GetClientCertificateAsync()); }
public Task <X509Certificate2> GetClientCertificateAsync() { return(inner.GetClientCertificateAsync()); }
/// <summary> /// See interface docs. /// </summary> /// <returns></returns> public Task <X509Certificate2> GetClientCertificateAsync() => _Wrapped.GetClientCertificateAsync();