Chromium Code Reviews| Index: net/base/x509_certificate_unittest.cc |
| =================================================================== |
| --- net/base/x509_certificate_unittest.cc (revision 119153) |
| +++ net/base/x509_certificate_unittest.cc (working copy) |
| @@ -702,6 +702,41 @@ |
| TestRootCerts::GetInstance()->Clear(); |
| } |
| +// Test for bug 108514. |
| +// The certificate expires on Fri Jul 20 19:40:39 2012. |
| +TEST(X509CertificateTest, ExtraneousMD5RootCert) { |
| + FilePath certs_dir = GetTestCertsDirectory(); |
| + |
| + scoped_refptr<X509Certificate> server_cert = |
| + ImportCertFromFile(certs_dir, "images_etrade_wallst_com.pem"); |
| + ASSERT_NE(static_cast<X509Certificate*>(NULL), server_cert); |
| + |
| + scoped_refptr<X509Certificate> intermediate_cert = |
| + ImportCertFromFile(certs_dir, "globalsign_orgv1_ca.pem"); |
| + ASSERT_NE(static_cast<X509Certificate*>(NULL), intermediate_cert); |
| + |
| + scoped_refptr<X509Certificate> md5_root_cert = |
| + ImportCertFromFile(certs_dir, "globalsign_root_ca_md5.pem"); |
| + ASSERT_NE(static_cast<X509Certificate*>(NULL), md5_root_cert); |
| + |
| + X509Certificate::OSCertHandles intermediates; |
| + intermediates.push_back(intermediate_cert->os_cert_handle()); |
| + intermediates.push_back(md5_root_cert->os_cert_handle()); |
| + scoped_refptr<X509Certificate> cert_chain = |
| + X509Certificate::CreateFromHandle(server_cert->os_cert_handle(), |
| + intermediates); |
| + |
| + CertVerifyResult verify_result; |
| + int flags = 0; |
| + int error = cert_chain->Verify("images.etrade.wallst.com", flags, NULL, |
|
Ryan Sleevi
2012/01/27 21:45:37
Can you file a bug and assign to me, and TODO here
|
| + &verify_result); |
| + if (error != OK) |
| + EXPECT_EQ(ERR_CERT_DATE_INVALID, error); |
| + |
| + EXPECT_FALSE(verify_result.has_md5); |
| + EXPECT_FALSE(verify_result.has_md5_ca); |
| +} |
| + |
| // Test for bug 94673. |
| TEST(X509CertificateTest, GoogleDigiNotarTest) { |
| FilePath certs_dir = GetTestCertsDirectory(); |