예제 #1
0
            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);
            }
예제 #2
0
			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;
			}