OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/cert/cert_verify_proc.h" | 5 #include "net/cert/cert_verify_proc.h" |
6 | 6 |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/callback_helpers.h" | 9 #include "base/callback_helpers.h" |
10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 EXPECT_EQ(paypal_null_fingerprint[i], fingerprint.data[i]); | 205 EXPECT_EQ(paypal_null_fingerprint[i], fingerprint.data[i]); |
206 | 206 |
207 int flags = 0; | 207 int flags = 0; |
208 CertVerifyResult verify_result; | 208 CertVerifyResult verify_result; |
209 int error = Verify(paypal_null_cert.get(), | 209 int error = Verify(paypal_null_cert.get(), |
210 "www.paypal.com", | 210 "www.paypal.com", |
211 flags, | 211 flags, |
212 NULL, | 212 NULL, |
213 empty_cert_list_, | 213 empty_cert_list_, |
214 &verify_result); | 214 &verify_result); |
215 #if defined(USE_NSS) || defined(OS_IOS) || defined(OS_ANDROID) | 215 #if defined(USE_NSS_CERTS) || defined(OS_IOS) || defined(OS_ANDROID) |
216 EXPECT_EQ(ERR_CERT_COMMON_NAME_INVALID, error); | 216 EXPECT_EQ(ERR_CERT_COMMON_NAME_INVALID, error); |
217 #else | 217 #else |
218 // TOOD(bulach): investigate why macosx and win aren't returning | 218 // TOOD(bulach): investigate why macosx and win aren't returning |
219 // ERR_CERT_INVALID or ERR_CERT_COMMON_NAME_INVALID. | 219 // ERR_CERT_INVALID or ERR_CERT_COMMON_NAME_INVALID. |
220 EXPECT_EQ(ERR_CERT_AUTHORITY_INVALID, error); | 220 EXPECT_EQ(ERR_CERT_AUTHORITY_INVALID, error); |
221 #endif | 221 #endif |
222 // Either the system crypto library should correctly report a certificate | 222 // Either the system crypto library should correctly report a certificate |
223 // name mismatch, or our certificate blacklist should cause us to report an | 223 // name mismatch, or our certificate blacklist should cause us to report an |
224 // invalid certificate. | 224 // invalid certificate. |
225 #if defined(USE_NSS) || defined(OS_WIN) || defined(OS_IOS) | 225 #if defined(USE_NSS_CERTS) || defined(OS_WIN) || defined(OS_IOS) |
226 EXPECT_TRUE(verify_result.cert_status & | 226 EXPECT_TRUE(verify_result.cert_status & |
227 (CERT_STATUS_COMMON_NAME_INVALID | CERT_STATUS_INVALID)); | 227 (CERT_STATUS_COMMON_NAME_INVALID | CERT_STATUS_INVALID)); |
228 #endif | 228 #endif |
229 } | 229 } |
230 | 230 |
231 // A regression test for http://crbug.com/31497. | 231 // A regression test for http://crbug.com/31497. |
232 #if defined(OS_ANDROID) | 232 #if defined(OS_ANDROID) |
233 // Disabled on Android, as the Android verification libraries require an | 233 // Disabled on Android, as the Android verification libraries require an |
234 // explicit policy to be specified, even when anyPolicy is permitted. | 234 // explicit policy to be specified, even when anyPolicy is permitted. |
235 #define MAYBE_IntermediateCARequireExplicitPolicy \ | 235 #define MAYBE_IntermediateCARequireExplicitPolicy \ |
(...skipping 511 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
747 // This certificate has two errors: "invalid key usage" and "untrusted CA". | 747 // This certificate has two errors: "invalid key usage" and "untrusted CA". |
748 // However, OpenSSL returns only one (the latter), and we can't detect | 748 // However, OpenSSL returns only one (the latter), and we can't detect |
749 // the other errors. | 749 // the other errors. |
750 EXPECT_EQ(ERR_CERT_AUTHORITY_INVALID, error); | 750 EXPECT_EQ(ERR_CERT_AUTHORITY_INVALID, error); |
751 #else | 751 #else |
752 EXPECT_EQ(ERR_CERT_INVALID, error); | 752 EXPECT_EQ(ERR_CERT_INVALID, error); |
753 EXPECT_TRUE(verify_result.cert_status & CERT_STATUS_INVALID); | 753 EXPECT_TRUE(verify_result.cert_status & CERT_STATUS_INVALID); |
754 #endif | 754 #endif |
755 // TODO(wtc): fix http://crbug.com/75520 to get all the certificate errors | 755 // TODO(wtc): fix http://crbug.com/75520 to get all the certificate errors |
756 // from NSS. | 756 // from NSS. |
757 #if !defined(USE_NSS) && !defined(OS_IOS) && !defined(OS_ANDROID) | 757 #if !defined(USE_NSS_CERTS) && !defined(OS_IOS) && !defined(OS_ANDROID) |
758 // The certificate is issued by an unknown CA. | 758 // The certificate is issued by an unknown CA. |
759 EXPECT_TRUE(verify_result.cert_status & CERT_STATUS_AUTHORITY_INVALID); | 759 EXPECT_TRUE(verify_result.cert_status & CERT_STATUS_AUTHORITY_INVALID); |
760 #endif | 760 #endif |
761 } | 761 } |
762 | 762 |
763 // Basic test for returning the chain in CertVerifyResult. Note that the | 763 // Basic test for returning the chain in CertVerifyResult. Note that the |
764 // returned chain may just be a reflection of the originally supplied chain; | 764 // returned chain may just be a reflection of the originally supplied chain; |
765 // that is, if any errors occur, the default chain returned is an exact copy | 765 // that is, if any errors occur, the default chain returned is an exact copy |
766 // of the certificate to be verified. The remaining VerifyReturn* tests are | 766 // of the certificate to be verified. The remaining VerifyReturn* tests are |
767 // used to ensure that the actual, verified chain is being returned by | 767 // used to ensure that the actual, verified chain is being returned by |
(...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1159 empty_cert_list_, | 1159 empty_cert_list_, |
1160 &verify_result); | 1160 &verify_result); |
1161 EXPECT_EQ(OK, error); | 1161 EXPECT_EQ(OK, error); |
1162 EXPECT_EQ(CERT_STATUS_SHA1_SIGNATURE_PRESENT, verify_result.cert_status); | 1162 EXPECT_EQ(CERT_STATUS_SHA1_SIGNATURE_PRESENT, verify_result.cert_status); |
1163 | 1163 |
1164 TestRootCerts::GetInstance()->Clear(); | 1164 TestRootCerts::GetInstance()->Clear(); |
1165 EXPECT_TRUE(TestRootCerts::GetInstance()->IsEmpty()); | 1165 EXPECT_TRUE(TestRootCerts::GetInstance()->IsEmpty()); |
1166 } | 1166 } |
1167 #endif | 1167 #endif |
1168 | 1168 |
1169 #if defined(USE_NSS) || defined(OS_IOS) || defined(OS_WIN) || defined(OS_MACOSX) | 1169 #if defined(USE_NSS_CERTS) || defined(OS_IOS) || defined(OS_WIN) || \ |
| 1170 defined(OS_MACOSX) |
1170 // Test that CRLSets are effective in making a certificate appear to be | 1171 // Test that CRLSets are effective in making a certificate appear to be |
1171 // revoked. | 1172 // revoked. |
1172 TEST_F(CertVerifyProcTest, CRLSet) { | 1173 TEST_F(CertVerifyProcTest, CRLSet) { |
1173 CertificateList ca_cert_list = | 1174 CertificateList ca_cert_list = |
1174 CreateCertificateListFromFile(GetTestCertsDirectory(), | 1175 CreateCertificateListFromFile(GetTestCertsDirectory(), |
1175 "root_ca_cert.pem", | 1176 "root_ca_cert.pem", |
1176 X509Certificate::FORMAT_AUTO); | 1177 X509Certificate::FORMAT_AUTO); |
1177 ASSERT_EQ(1U, ca_cert_list.size()); | 1178 ASSERT_EQ(1U, ca_cert_list.size()); |
1178 ScopedTestRoot test_root(ca_cert_list[0].get()); | 1179 ScopedTestRoot test_root(ca_cert_list[0].get()); |
1179 | 1180 |
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1413 "weak_digest_sha1_ee.pem", EXPECT_MD5 | EXPECT_SHA1 }, | 1414 "weak_digest_sha1_ee.pem", EXPECT_MD5 | EXPECT_SHA1 }, |
1414 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) | 1415 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) |
1415 // MD4 is not supported by OS X / NSS | 1416 // MD4 is not supported by OS X / NSS |
1416 { "weak_digest_sha1_root.pem", "weak_digest_md4_intermediate.pem", | 1417 { "weak_digest_sha1_root.pem", "weak_digest_md4_intermediate.pem", |
1417 "weak_digest_sha1_ee.pem", EXPECT_MD4 | EXPECT_SHA1 }, | 1418 "weak_digest_sha1_ee.pem", EXPECT_MD4 | EXPECT_SHA1 }, |
1418 #endif | 1419 #endif |
1419 { "weak_digest_sha1_root.pem", "weak_digest_md2_intermediate.pem", | 1420 { "weak_digest_sha1_root.pem", "weak_digest_md2_intermediate.pem", |
1420 "weak_digest_sha1_ee.pem", EXPECT_MD2 | EXPECT_SHA1 }, | 1421 "weak_digest_sha1_ee.pem", EXPECT_MD2 | EXPECT_SHA1 }, |
1421 }; | 1422 }; |
1422 // Disabled on NSS - MD4 is not supported, and MD2 and MD5 are disabled. | 1423 // Disabled on NSS - MD4 is not supported, and MD2 and MD5 are disabled. |
1423 #if defined(USE_NSS) || defined(OS_IOS) | 1424 #if defined(USE_NSS_CERTS) || defined(OS_IOS) |
1424 #define MAYBE_VerifyIntermediate DISABLED_VerifyIntermediate | 1425 #define MAYBE_VerifyIntermediate DISABLED_VerifyIntermediate |
1425 #else | 1426 #else |
1426 #define MAYBE_VerifyIntermediate VerifyIntermediate | 1427 #define MAYBE_VerifyIntermediate VerifyIntermediate |
1427 #endif | 1428 #endif |
1428 WRAPPED_INSTANTIATE_TEST_CASE_P( | 1429 WRAPPED_INSTANTIATE_TEST_CASE_P( |
1429 MAYBE_VerifyIntermediate, | 1430 MAYBE_VerifyIntermediate, |
1430 CertVerifyProcWeakDigestTest, | 1431 CertVerifyProcWeakDigestTest, |
1431 testing::ValuesIn(kVerifyIntermediateCATestData)); | 1432 testing::ValuesIn(kVerifyIntermediateCATestData)); |
1432 | 1433 |
1433 // The signature algorithm of end-entity should be properly detected. | 1434 // The signature algorithm of end-entity should be properly detected. |
1434 const WeakDigestTestData kVerifyEndEntityTestData[] = { | 1435 const WeakDigestTestData kVerifyEndEntityTestData[] = { |
1435 { "weak_digest_sha1_root.pem", "weak_digest_sha1_intermediate.pem", | 1436 { "weak_digest_sha1_root.pem", "weak_digest_sha1_intermediate.pem", |
1436 "weak_digest_md5_ee.pem", EXPECT_MD5 | EXPECT_SHA1 }, | 1437 "weak_digest_md5_ee.pem", EXPECT_MD5 | EXPECT_SHA1 }, |
1437 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) | 1438 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) |
1438 // MD4 is not supported by OS X / NSS | 1439 // MD4 is not supported by OS X / NSS |
1439 { "weak_digest_sha1_root.pem", "weak_digest_sha1_intermediate.pem", | 1440 { "weak_digest_sha1_root.pem", "weak_digest_sha1_intermediate.pem", |
1440 "weak_digest_md4_ee.pem", EXPECT_MD4 | EXPECT_SHA1 }, | 1441 "weak_digest_md4_ee.pem", EXPECT_MD4 | EXPECT_SHA1 }, |
1441 #endif | 1442 #endif |
1442 { "weak_digest_sha1_root.pem", "weak_digest_sha1_intermediate.pem", | 1443 { "weak_digest_sha1_root.pem", "weak_digest_sha1_intermediate.pem", |
1443 "weak_digest_md2_ee.pem", EXPECT_MD2 | EXPECT_SHA1 }, | 1444 "weak_digest_md2_ee.pem", EXPECT_MD2 | EXPECT_SHA1 }, |
1444 }; | 1445 }; |
1445 // Disabled on NSS - NSS caches chains/signatures in such a way that cannot | 1446 // Disabled on NSS - NSS caches chains/signatures in such a way that cannot |
1446 // be cleared until NSS is cleanly shutdown, which is not presently supported | 1447 // be cleared until NSS is cleanly shutdown, which is not presently supported |
1447 // in Chromium. | 1448 // in Chromium. |
1448 #if defined(USE_NSS) || defined(OS_IOS) | 1449 #if defined(USE_NSS_CERTS) || defined(OS_IOS) |
1449 #define MAYBE_VerifyEndEntity DISABLED_VerifyEndEntity | 1450 #define MAYBE_VerifyEndEntity DISABLED_VerifyEndEntity |
1450 #else | 1451 #else |
1451 #define MAYBE_VerifyEndEntity VerifyEndEntity | 1452 #define MAYBE_VerifyEndEntity VerifyEndEntity |
1452 #endif | 1453 #endif |
1453 WRAPPED_INSTANTIATE_TEST_CASE_P(MAYBE_VerifyEndEntity, | 1454 WRAPPED_INSTANTIATE_TEST_CASE_P(MAYBE_VerifyEndEntity, |
1454 CertVerifyProcWeakDigestTest, | 1455 CertVerifyProcWeakDigestTest, |
1455 testing::ValuesIn(kVerifyEndEntityTestData)); | 1456 testing::ValuesIn(kVerifyEndEntityTestData)); |
1456 | 1457 |
1457 // Incomplete chains should still report the status of the intermediate. | 1458 // Incomplete chains should still report the status of the intermediate. |
1458 const WeakDigestTestData kVerifyIncompleteIntermediateTestData[] = { | 1459 const WeakDigestTestData kVerifyIncompleteIntermediateTestData[] = { |
1459 { NULL, "weak_digest_md5_intermediate.pem", "weak_digest_sha1_ee.pem", | 1460 { NULL, "weak_digest_md5_intermediate.pem", "weak_digest_sha1_ee.pem", |
1460 EXPECT_MD5 | EXPECT_SHA1 }, | 1461 EXPECT_MD5 | EXPECT_SHA1 }, |
1461 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) | 1462 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) |
1462 // MD4 is not supported by OS X / NSS | 1463 // MD4 is not supported by OS X / NSS |
1463 { NULL, "weak_digest_md4_intermediate.pem", "weak_digest_sha1_ee.pem", | 1464 { NULL, "weak_digest_md4_intermediate.pem", "weak_digest_sha1_ee.pem", |
1464 EXPECT_MD4 | EXPECT_SHA1 }, | 1465 EXPECT_MD4 | EXPECT_SHA1 }, |
1465 #endif | 1466 #endif |
1466 { NULL, "weak_digest_md2_intermediate.pem", "weak_digest_sha1_ee.pem", | 1467 { NULL, "weak_digest_md2_intermediate.pem", "weak_digest_sha1_ee.pem", |
1467 EXPECT_MD2 | EXPECT_SHA1 }, | 1468 EXPECT_MD2 | EXPECT_SHA1 }, |
1468 }; | 1469 }; |
1469 // Disabled on NSS - libpkix does not return constructed chains on error, | 1470 // Disabled on NSS - libpkix does not return constructed chains on error, |
1470 // preventing us from detecting/inspecting the verified chain. | 1471 // preventing us from detecting/inspecting the verified chain. |
1471 #if defined(USE_NSS) || defined(OS_IOS) | 1472 #if defined(USE_NSS_CERTS) || defined(OS_IOS) |
1472 #define MAYBE_VerifyIncompleteIntermediate \ | 1473 #define MAYBE_VerifyIncompleteIntermediate \ |
1473 DISABLED_VerifyIncompleteIntermediate | 1474 DISABLED_VerifyIncompleteIntermediate |
1474 #else | 1475 #else |
1475 #define MAYBE_VerifyIncompleteIntermediate VerifyIncompleteIntermediate | 1476 #define MAYBE_VerifyIncompleteIntermediate VerifyIncompleteIntermediate |
1476 #endif | 1477 #endif |
1477 WRAPPED_INSTANTIATE_TEST_CASE_P( | 1478 WRAPPED_INSTANTIATE_TEST_CASE_P( |
1478 MAYBE_VerifyIncompleteIntermediate, | 1479 MAYBE_VerifyIncompleteIntermediate, |
1479 CertVerifyProcWeakDigestTest, | 1480 CertVerifyProcWeakDigestTest, |
1480 testing::ValuesIn(kVerifyIncompleteIntermediateTestData)); | 1481 testing::ValuesIn(kVerifyIncompleteIntermediateTestData)); |
1481 | 1482 |
1482 // Incomplete chains should still report the status of the end-entity. | 1483 // Incomplete chains should still report the status of the end-entity. |
1483 const WeakDigestTestData kVerifyIncompleteEETestData[] = { | 1484 const WeakDigestTestData kVerifyIncompleteEETestData[] = { |
1484 { NULL, "weak_digest_sha1_intermediate.pem", "weak_digest_md5_ee.pem", | 1485 { NULL, "weak_digest_sha1_intermediate.pem", "weak_digest_md5_ee.pem", |
1485 EXPECT_MD5 | EXPECT_SHA1 }, | 1486 EXPECT_MD5 | EXPECT_SHA1 }, |
1486 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) | 1487 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) |
1487 // MD4 is not supported by OS X / NSS | 1488 // MD4 is not supported by OS X / NSS |
1488 { NULL, "weak_digest_sha1_intermediate.pem", "weak_digest_md4_ee.pem", | 1489 { NULL, "weak_digest_sha1_intermediate.pem", "weak_digest_md4_ee.pem", |
1489 EXPECT_MD4 | EXPECT_SHA1 }, | 1490 EXPECT_MD4 | EXPECT_SHA1 }, |
1490 #endif | 1491 #endif |
1491 { NULL, "weak_digest_sha1_intermediate.pem", "weak_digest_md2_ee.pem", | 1492 { NULL, "weak_digest_sha1_intermediate.pem", "weak_digest_md2_ee.pem", |
1492 EXPECT_MD2 | EXPECT_SHA1 }, | 1493 EXPECT_MD2 | EXPECT_SHA1 }, |
1493 }; | 1494 }; |
1494 // Disabled on NSS - libpkix does not return constructed chains on error, | 1495 // Disabled on NSS - libpkix does not return constructed chains on error, |
1495 // preventing us from detecting/inspecting the verified chain. | 1496 // preventing us from detecting/inspecting the verified chain. |
1496 #if defined(USE_NSS) || defined(OS_IOS) | 1497 #if defined(USE_NSS_CERTS) || defined(OS_IOS) |
1497 #define MAYBE_VerifyIncompleteEndEntity DISABLED_VerifyIncompleteEndEntity | 1498 #define MAYBE_VerifyIncompleteEndEntity DISABLED_VerifyIncompleteEndEntity |
1498 #else | 1499 #else |
1499 #define MAYBE_VerifyIncompleteEndEntity VerifyIncompleteEndEntity | 1500 #define MAYBE_VerifyIncompleteEndEntity VerifyIncompleteEndEntity |
1500 #endif | 1501 #endif |
1501 WRAPPED_INSTANTIATE_TEST_CASE_P( | 1502 WRAPPED_INSTANTIATE_TEST_CASE_P( |
1502 MAYBE_VerifyIncompleteEndEntity, | 1503 MAYBE_VerifyIncompleteEndEntity, |
1503 CertVerifyProcWeakDigestTest, | 1504 CertVerifyProcWeakDigestTest, |
1504 testing::ValuesIn(kVerifyIncompleteEETestData)); | 1505 testing::ValuesIn(kVerifyIncompleteEETestData)); |
1505 | 1506 |
1506 // Differing algorithms between the intermediate and the EE should still be | 1507 // Differing algorithms between the intermediate and the EE should still be |
1507 // reported. | 1508 // reported. |
1508 const WeakDigestTestData kVerifyMixedTestData[] = { | 1509 const WeakDigestTestData kVerifyMixedTestData[] = { |
1509 { "weak_digest_sha1_root.pem", "weak_digest_md5_intermediate.pem", | 1510 { "weak_digest_sha1_root.pem", "weak_digest_md5_intermediate.pem", |
1510 "weak_digest_md2_ee.pem", EXPECT_MD2 | EXPECT_MD5 }, | 1511 "weak_digest_md2_ee.pem", EXPECT_MD2 | EXPECT_MD5 }, |
1511 { "weak_digest_sha1_root.pem", "weak_digest_md2_intermediate.pem", | 1512 { "weak_digest_sha1_root.pem", "weak_digest_md2_intermediate.pem", |
1512 "weak_digest_md5_ee.pem", EXPECT_MD2 | EXPECT_MD5 }, | 1513 "weak_digest_md5_ee.pem", EXPECT_MD2 | EXPECT_MD5 }, |
1513 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) | 1514 #if defined(USE_OPENSSL_CERTS) || defined(OS_WIN) |
1514 // MD4 is not supported by OS X / NSS | 1515 // MD4 is not supported by OS X / NSS |
1515 { "weak_digest_sha1_root.pem", "weak_digest_md4_intermediate.pem", | 1516 { "weak_digest_sha1_root.pem", "weak_digest_md4_intermediate.pem", |
1516 "weak_digest_md2_ee.pem", EXPECT_MD2 | EXPECT_MD4 }, | 1517 "weak_digest_md2_ee.pem", EXPECT_MD2 | EXPECT_MD4 }, |
1517 #endif | 1518 #endif |
1518 }; | 1519 }; |
1519 // NSS does not support MD4 and does not enable MD2 by default, making all | 1520 // NSS does not support MD4 and does not enable MD2 by default, making all |
1520 // permutations invalid. | 1521 // permutations invalid. |
1521 #if defined(USE_NSS) || defined(OS_IOS) | 1522 #if defined(USE_NSS_CERTS) || defined(OS_IOS) |
1522 #define MAYBE_VerifyMixed DISABLED_VerifyMixed | 1523 #define MAYBE_VerifyMixed DISABLED_VerifyMixed |
1523 #else | 1524 #else |
1524 #define MAYBE_VerifyMixed VerifyMixed | 1525 #define MAYBE_VerifyMixed VerifyMixed |
1525 #endif | 1526 #endif |
1526 WRAPPED_INSTANTIATE_TEST_CASE_P( | 1527 WRAPPED_INSTANTIATE_TEST_CASE_P( |
1527 MAYBE_VerifyMixed, | 1528 MAYBE_VerifyMixed, |
1528 CertVerifyProcWeakDigestTest, | 1529 CertVerifyProcWeakDigestTest, |
1529 testing::ValuesIn(kVerifyMixedTestData)); | 1530 testing::ValuesIn(kVerifyMixedTestData)); |
1530 | 1531 |
1531 // For the list of valid hostnames, see | 1532 // For the list of valid hostnames, see |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1587 EXPECT_TRUE(verify_result.cert_status & CERT_STATUS_COMMON_NAME_INVALID); | 1588 EXPECT_TRUE(verify_result.cert_status & CERT_STATUS_COMMON_NAME_INVALID); |
1588 } | 1589 } |
1589 } | 1590 } |
1590 | 1591 |
1591 WRAPPED_INSTANTIATE_TEST_CASE_P( | 1592 WRAPPED_INSTANTIATE_TEST_CASE_P( |
1592 VerifyName, | 1593 VerifyName, |
1593 CertVerifyProcNameTest, | 1594 CertVerifyProcNameTest, |
1594 testing::ValuesIn(kVerifyNameData)); | 1595 testing::ValuesIn(kVerifyNameData)); |
1595 | 1596 |
1596 } // namespace net | 1597 } // namespace net |
OLD | NEW |