﻿// Decompiled with JetBrains decompiler
// Type: System.Net.Security.LocalCertificateSelectionCallback
// Assembly: System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// MVID: 5ABD58FD-DF31-44FD-A492-63F2B47CC9AF
// Assembly location: C:\Windows\Microsoft.NET\Framework\v4.0.30319\System.dll

using System.Security.Cryptography.X509Certificates;

namespace System.Net.Security
{
  /// <summary>
  /// Selects the local Secure Sockets Layer (SSL) certificate used for authentication.
  /// </summary>
  /// 
  /// <returns>
  /// An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate"/> used for establishing an SSL connection.
  /// </returns>
  /// <param name="sender">An object that contains state information for this validation.</param><param name="targetHost">The host server specified by the client.</param><param name="localCertificates">An <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection"/> containing local certificates.</param><param name="remoteCertificate">The certificate used to authenticate the remote party.</param><param name="acceptableIssuers">A <see cref="T:System.String"/> array of certificate issuers acceptable to the remote party.</param>
  public delegate X509Certificate LocalCertificateSelectionCallback(object sender, string targetHost, X509CertificateCollection localCertificates, X509Certificate remoteCertificate, string[] acceptableIssuers);
}
