Index: net/base/x509_certificate.cc |
=================================================================== |
--- net/base/x509_certificate.cc (revision 93224) |
+++ net/base/x509_certificate.cc (working copy) |
@@ -248,10 +248,21 @@ |
return new X509Certificate(cert_handle, intermediates); |
} |
+#if defined(OS_WIN) |
static X509Certificate::OSCertHandle CreateOSCert(base::StringPiece der_cert) { |
rvargas (doing something else)
2011/07/20 21:34:06
I know this is not really part of this change, but
|
+ X509Certificate::OSCertHandle cert_handle = NULL; |
+ BOOL ok = CertAddEncodedCertificateToStore( |
+ X509Certificate::cert_store(), X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, |
+ reinterpret_cast<const BYTE*>(der_cert.data()), der_cert.size(), |
+ CERT_STORE_ADD_USE_EXISTING, &cert_handle); |
+ return ok ? cert_handle : NULL; |
+} |
+#else |
+static X509Certificate::OSCertHandle CreateOSCert(base::StringPiece der_cert) { |
return X509Certificate::CreateOSCertHandleFromBytes( |
const_cast<char*>(der_cert.data()), der_cert.size()); |
} |
+#endif |
// static |
X509Certificate* X509Certificate::CreateFromDERCertChain( |