SslStreamBase ssl_stream;
ICertificateValidator certificateValidator;
- MonoTlsProvider provider;
#endregion // Fields
#region Constructors
- public LegacySslStream (Stream innerStream, bool leaveInnerStreamOpen, MonoTlsProvider provider, MonoTlsSettings settings)
+ public LegacySslStream (Stream innerStream, bool leaveInnerStreamOpen, SslStream owner, MonoTlsProvider provider, MonoTlsSettings settings)
: base (innerStream, leaveInnerStreamOpen)
{
- this.provider = provider;
- certificateValidator = ChainValidationHelper.GetDefaultValidator (provider, settings);
+ SslStream = owner;
+ Provider = provider;
+ certificateValidator = ChainValidationHelper.GetInternalValidator (provider, settings);
}
#endregion // Constructors
*/
X509Certificate OnCertificateSelection (X509CertificateCollection clientCerts, X509Certificate serverCert, string targetHost, X509CertificateCollection serverRequestedCerts)
{
+#pragma warning disable 618
string [] acceptableIssuers = new string [serverRequestedCerts != null ? serverRequestedCerts.Count : 0];
for (int i = 0; i < acceptableIssuers.Length; i++)
acceptableIssuers [i] = serverRequestedCerts [i].GetIssuerName ();
X509Certificate clientCertificate;
certificateValidator.SelectClientCertificate (targetHost, clientCerts, serverCert, acceptableIssuers, out clientCertificate);
return clientCertificate;
+#pragma warning restore 618
}
public virtual IAsyncResult BeginAuthenticateAsClient (string targetHost, AsyncCallback asyncCallback, object asyncState)
#region IMonoSslStream
+ Task IMonoSslStream.ShutdownAsync ()
+ {
+ return Task.CompletedTask;
+ }
+
AuthenticatedStream IMonoSslStream.AuthenticatedStream {
get { return this; }
}
get { throw new NotSupportedException (); }
}
- MonoTlsProvider IMonoSslStream.Provider {
- get { return provider; }
+ public SslStream SslStream {
+ get;
+ }
+
+ public MonoTlsProvider Provider {
+ get;
}
- MonoTlsConnectionInfo IMonoSslStream.GetConnectionInfo ()
+ public MonoTlsConnectionInfo GetConnectionInfo ()
{
return null;
}