| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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/base/x509_certificate.h" | 5 #include "net/base/x509_certificate.h" |
| 6 | 6 |
| 7 #include "base/crypto/rsa_private_key.h" | 7 #include "base/crypto/rsa_private_key.h" |
| 8 #include "base/crypto/scoped_capi_types.h" | 8 #include "base/crypto/scoped_capi_types.h" |
| 9 #include "base/lazy_instance.h" | 9 #include "base/lazy_instance.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 387 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 398 | 398 |
| 399 // We don't expect to have more than one CN, L, S, and C. | 399 // We don't expect to have more than one CN, L, S, and C. |
| 400 std::vector<std::string>* single_value_lists[4] = { | 400 std::vector<std::string>* single_value_lists[4] = { |
| 401 &common_names, &locality_names, &state_names, &country_names }; | 401 &common_names, &locality_names, &state_names, &country_names }; |
| 402 std::string* single_values[4] = { | 402 std::string* single_values[4] = { |
| 403 &principal->common_name, &principal->locality_name, | 403 &principal->common_name, &principal->locality_name, |
| 404 &principal->state_or_province_name, &principal->country_name }; | 404 &principal->state_or_province_name, &principal->country_name }; |
| 405 for (int i = 0; i < arraysize(single_value_lists); ++i) { | 405 for (int i = 0; i < arraysize(single_value_lists); ++i) { |
| 406 int length = static_cast<int>(single_value_lists[i]->size()); | 406 int length = static_cast<int>(single_value_lists[i]->size()); |
| 407 DCHECK(single_value_lists[i]->size() <= 1); | 407 DCHECK(single_value_lists[i]->size() <= 1); |
| 408 if (single_value_lists[i]->size() > 0) | 408 if (!single_value_lists[i]->empty()) |
| 409 *(single_values[i]) = (*(single_value_lists[i]))[0]; | 409 *(single_values[i]) = (*(single_value_lists[i]))[0]; |
| 410 } | 410 } |
| 411 } | 411 } |
| 412 | 412 |
| 413 void AddCertsFromStore(HCERTSTORE store, | 413 void AddCertsFromStore(HCERTSTORE store, |
| 414 X509Certificate::OSCertHandles* results) { | 414 X509Certificate::OSCertHandles* results) { |
| 415 PCCERT_CONTEXT cert = NULL; | 415 PCCERT_CONTEXT cert = NULL; |
| 416 | 416 |
| 417 while ((cert = CertEnumCertificatesInStore(store, cert)) != NULL) { | 417 while ((cert = CertEnumCertificatesInStore(store, cert)) != NULL) { |
| 418 PCCERT_CONTEXT to_add = NULL; | 418 PCCERT_CONTEXT to_add = NULL; |
| (...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 971 DWORD sha1_size = sizeof(sha1.data); | 971 DWORD sha1_size = sizeof(sha1.data); |
| 972 rv = CryptHashCertificate(NULL, CALG_SHA1, 0, cert->pbCertEncoded, | 972 rv = CryptHashCertificate(NULL, CALG_SHA1, 0, cert->pbCertEncoded, |
| 973 cert->cbCertEncoded, sha1.data, &sha1_size); | 973 cert->cbCertEncoded, sha1.data, &sha1_size); |
| 974 DCHECK(rv && sha1_size == sizeof(sha1.data)); | 974 DCHECK(rv && sha1_size == sizeof(sha1.data)); |
| 975 if (!rv) | 975 if (!rv) |
| 976 memset(sha1.data, 0, sizeof(sha1.data)); | 976 memset(sha1.data, 0, sizeof(sha1.data)); |
| 977 return sha1; | 977 return sha1; |
| 978 } | 978 } |
| 979 | 979 |
| 980 } // namespace net | 980 } // namespace net |
| OLD | NEW |