protected X509Certificate clientCertificateSelectionCallback(object sender, string targetHost, X509List localCerts, X509Certificate remoteCert, string[] acceptableIssuers) { X509Certificate retCert = null; // check target host? for (int i = 0; i < acceptableIssuers.GetLength(0); i++) { X509Name name = new X509Name(acceptableIssuers[i]); foreach (X509Certificate cert in localCerts) { if (cert.Issuer.CompareTo(name) == 0) { retCert = cert; break; } cert.Dispose(); } name.Dispose(); } return(retCert); }
protected X509Certificate clientCertificateSelectionCallback(object sender, string targetHost, X509List localCerts, X509Certificate remoteCert, string[] acceptableIssuers) { X509Certificate retCert = null; // check target host? for (int i = 0; i < acceptableIssuers.GetLength(0); i++) { X509Name name = new X509Name(acceptableIssuers[i]); foreach (X509Certificate cert in localCerts) { if (cert.Issuer.CompareTo(name) == 0) { retCert = cert; break; } cert.Dispose(); } name.Dispose(); } return retCert; }